Class: Nanoc::Int::Context Private
- Inherits:
-
Object
- Object
- Nanoc::Int::Context
- Defined in:
- lib/nanoc/base/context.rb
Overview
This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.
Provides a context and a binding for use in filters such as the ERB and Haml ones.
Direct Known Subclasses
Instance Method Summary collapse
-
#get_binding ⇒ Binding
private
Returns a binding for this instance.
-
#initialize(hash) ⇒ Context
constructor
private
Creates a new context based off the contents of the hash.
Constructor Details
#initialize(hash) ⇒ Context
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Creates a new context based off the contents of the hash.
Each pair in the hash will be converted to an instance variable and an instance method. For example, passing the hash ‘{ :foo => ’bar’ }‘ will cause `@foo` to have the value `“bar”`, and the instance method `#foo` to return the same value `“bar”`.
26 27 28 29 30 31 32 33 34 35 |
# File 'lib/nanoc/base/context.rb', line 26 def initialize(hash) hash.each_pair do |key, value| # Build instance variable instance_variable_set('@' + key.to_s, value) # Define method = (class << self; self; end) .send(:define_method, key) { value } end end |
Instance Method Details
#get_binding ⇒ Binding
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns a binding for this instance.
40 41 42 |
# File 'lib/nanoc/base/context.rb', line 40 def get_binding binding end |