class Remarkably::Base::Engine

Attributes

remarkably_engine[R]

Public Class Methods

new(*args, &block) click to toggle source
# File lib/remarkably.rb, line 17
def initialize *args, &block
  clear!
  @remarkably_engine = self
  self.instance_eval( &block ) if block_given?
end

Public Instance Methods

clear!() click to toggle source
# File lib/remarkably.rb, line 39
def clear!
  @output = ''
end
method!(sym, args, hash, &block) click to toggle source
# File lib/remarkably.rb, line 43
def method! sym, args, hash, &block
end
method_missing(sym, *args, &block) click to toggle source
# File lib/remarkably.rb, line 35
def method_missing(sym, *args, &block)
  missing_method( sym, self, *args, &block )
end
missing_method(sym, context, *args, &block) click to toggle source
# File lib/remarkably.rb, line 23
def missing_method(sym, context, *args, &block)
  @context = context
  hash = args.last.is_a?(Hash) ? args.pop : {}
  responder ||= context.remarkably_engine if context.remarkably_engine.respond_to?( sym )
  responder ||= self if self.respond_to?( sym )
  if responder
    responder.send( sym, args, hash, &block )
  else
    method!(sym, args, hash, &block)
  end
end
to_s() click to toggle source
# File lib/remarkably.rb, line 46
def to_s
  result = @output
  clear!
  result
end