Class: Middleman::CoreExtensions::Collections::LazyCollectorRoot
- Inherits:
-
BasicObject
- Defined in:
- middleman-core/lib/middleman-core/core_extensions/collections/lazy_root.rb
Constant Summary
collapse
- DELEGATE =
%i[hash eql? is_a? puts p].freeze
Instance Method Summary
collapse
Constructor Details
Returns a new instance of LazyCollectorRoot.
11
12
13
14
|
# File 'middleman-core/lib/middleman-core/core_extensions/collections/lazy_root.rb', line 11
def initialize(parent)
@data = nil
@parent = parent
end
|
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(name, *args, &block) ⇒ Object
28
29
30
31
32
|
# File 'middleman-core/lib/middleman-core/core_extensions/collections/lazy_root.rb', line 28
def method_missing(name, *args, &block)
return ::Kernel.send(name, *args, &block) if DELEGATE.include? name
LazyCollectorStep.new(name, args, block, self)
end
|
Instance Method Details
#leaves ⇒ Object
24
25
26
|
# File 'middleman-core/lib/middleman-core/core_extensions/collections/lazy_root.rb', line 24
def leaves
@parent.leaves
end
|
#realize!(data) ⇒ Object
16
17
18
|
# File 'middleman-core/lib/middleman-core/core_extensions/collections/lazy_root.rb', line 16
def realize!(data)
@data = data
end
|
#respond_to_missing?(_method_name, _include_private = false) ⇒ Boolean
34
35
36
|
# File 'middleman-core/lib/middleman-core/core_extensions/collections/lazy_root.rb', line 34
def respond_to_missing?(_method_name, _include_private = false)
true
end
|
#value(_ctx = nil) ⇒ Object
20
21
22
|
# File 'middleman-core/lib/middleman-core/core_extensions/collections/lazy_root.rb', line 20
def value(_ctx = nil)
@data
end
|