Class: ConfigMe::DefinitionsParser
- Inherits:
-
Object
- Object
- ConfigMe::DefinitionsParser
- Defined in:
- lib/config-me/definitions_parser.rb
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(breadcrumbs = [], &definitions) ⇒ DefinitionsParser
constructor
A new instance of DefinitionsParser.
Constructor Details
#initialize(breadcrumbs = [], &definitions) ⇒ DefinitionsParser
Returns a new instance of DefinitionsParser.
7 8 9 10 |
# File 'lib/config-me/definitions_parser.rb', line 7 def initialize = [], &definitions @node = ConfigMe::Node.new() instance_exec &definitions end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(method, *args, &definitions) ⇒ Object (private)
14 15 16 17 18 19 20 21 |
# File 'lib/config-me/definitions_parser.rb', line 14 def method_missing method, *args, &definitions @node[ method ] = if block_given? = @node.instance_variable_get(:@breadcrumbs) ConfigMe::DefinitionsParser.parse! + [ method ], &definitions else args.first end end |
Class Method Details
.parse!(breadcrumbs = [], &definitions) ⇒ Object
3 4 5 |
# File 'lib/config-me/definitions_parser.rb', line 3 def self.parse! = [], &definitions new(, &definitions).instance_variable_get(:@node) end |