Class: Alpinist::Semantics
- Inherits:
-
Object
- Object
- Alpinist::Semantics
- Defined in:
- lib/alpinist/semantics.rb
Instance Method Summary collapse
- #build! ⇒ Object
- #find_node(descriptor_url) ⇒ Object
-
#initialize(initial_profile, fetcher = ProfileFetcher.new) ⇒ Semantics
constructor
A new instance of Semantics.
- #print_tree ⇒ Object
Constructor Details
#initialize(initial_profile, fetcher = ProfileFetcher.new) ⇒ Semantics
3 4 5 6 7 8 9 |
# File 'lib/alpinist/semantics.rb', line 3 def initialize(initial_profile, fetcher = ProfileFetcher.new) @initial_profile = initial_profile @fetcher = fetcher @profiles = {} @profiles[initial_profile.url] = initial_profile @nodes = {} end |
Instance Method Details
#build! ⇒ Object
11 12 13 14 15 16 |
# File 'lib/alpinist/semantics.rb', line 11 def build! @initial_profile.all_descriptors.each do |descriptor| descriptor_url = "#{@initial_profile.url}##{descriptor.id}" connect_to_parent(descriptor_url, descriptor) end end |
#find_node(descriptor_url) ⇒ Object
18 19 20 |
# File 'lib/alpinist/semantics.rb', line 18 def find_node(descriptor_url) @nodes[descriptor_url] end |
#print_tree ⇒ Object
22 23 24 25 |
# File 'lib/alpinist/semantics.rb', line 22 def print_tree root_nodes = @nodes.values.select { |node| node.is_root? } root_nodes.each(&:print_tree) end |