Module: Erb::View

Defined in:
lib/erb/view.rb,
lib/erb/view/version.rb

Defined Under Namespace

Modules: ClassMethods

Constant Summary collapse

VERSION =
'0.1.0'

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



16
17
18
# File 'lib/erb/view.rb', line 16

def self.included(base)
  base.extend(ClassMethods)
end

Instance Method Details

#initializeObject



40
41
42
43
44
45
46
47
# File 'lib/erb/view.rb', line 40

def initialize
  self.class.exposes.each do |method|
    next if respond_to?(method)
    define_singleton_method(method) do
      @data.fetch(method)
    end
  end
end

#render(data = {}) ⇒ Object



49
50
51
52
# File 'lib/erb/view.rb', line 49

def render(data = {})
  @data = data
  erb(self.class.template.to_s).result(binding)
end