Class: DTC::Utils::Visitor::HashBuilder
- Defined in:
- lib/dtc/utils/visitor.rb
Overview
Subclasses the ‘Builder` to create hash based hierarchies, using the first argument as the key in the parent hash
Does not tolerate duplicate keys by default. Override ‘key_collision` to change this.
Example:
DTC::Utils::Visitor::DSL::accept(DTC::Utils::Visitor::HashBuilder) {
container(:arg1) { child_item(:arg2) }
root_child_item
}.root
=>
{:container=>{nil=>[:arg1], :child_item=>[:arg2]}, :root_child_item=>[]}
Instance Method Summary collapse
-
#initialize(root = {}) ⇒ HashBuilder
constructor
A new instance of HashBuilder.
Methods inherited from Builder
Constructor Details
#initialize(root = {}) ⇒ HashBuilder
Returns a new instance of HashBuilder.
210 211 212 |
# File 'lib/dtc/utils/visitor.rb', line 210 def initialize root = {} super root end |