class DTK::DSL::Template::V1::ModuleRef
Constants
- MODULE_NAMESPACE_DELIMS
Public Class Methods
elements_collection_type()
click to toggle source
# File lib/dsl/template/v1/module_ref.rb, line 28 def self.elements_collection_type :array end
parse_elements(input_array, parent_info)
click to toggle source
# File lib/dsl/template/v1/module_ref.rb, line 32 def self.parse_elements(input_array, parent_info) ret = file_parser_output_array input_array.each_with_index do |module_ref, i| ret << parse_element(module_ref, parent_info, :index => i) end ret end
Public Instance Methods
parse!()
click to toggle source
# File lib/dsl/template/v1/module_ref.rb, line 40 def parse! split = split_by_delim(input_string) unless split.size == 2 raise parsing_error("The term '#{input_string}' is an ill-formed module reference") end namespace, module_name = split set :Namespace, namespace set :ModuleName, module_name end
parser_output_type()
click to toggle source
# File lib/dsl/template/v1/module_ref.rb, line 24 def parser_output_type :hash end
Private Instance Methods
split_by_delim(str)
click to toggle source
# File lib/dsl/template/v1/module_ref.rb, line 52 def split_by_delim(str) if matching_delim = MODULE_NAMESPACE_DELIMS.find { |delim| str =~ Regexp.new(delim) } str.split(matching_delim) else [str] end end