class DtkCommon::DSL::FileParser::Assembly::V2::Component

Public Class Methods

parse_hash_content(input_hash) click to toggle source
# File lib/dsl/file_parser/file_types/assembly/v2/assembly.rb, line 44
def self.parse_hash_content(input_hash)
  ret = OutputArray.new
  (input_hash[:nodes]||{}).each_pair do |node_name,node_info|
    (node_info[:components]||{}).each do |component|
      mod_component_name = (component.kind_of?(Hash) ? component.keys.first : component)
      module_name,component_name = ret_module_and_component_names(mod_component_name)
      ret << OutputHash.new(:component_name => component_name,:module_name => module_name,:node_name => node_name)
    end
  end
  ret
end

Private Class Methods

ret_module_and_component_names(mod_component_name) click to toggle source

returns [module_name,component_name]

# File lib/dsl/file_parser/file_types/assembly/v2/assembly.rb, line 58
def self.ret_module_and_component_names(mod_component_name)
  if mod_component_name =~ /(^[^:]+)::([^:]+$)/
    [$1,$2]
  else
    [mod_component_name,mod_component_name]
  end
end