Class: DepGraph::DependencyTypesManager

Inherits:
Object
  • Object
show all
Defined in:
lib/dependency_types_manager.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(node_type = :anything) ⇒ DependencyTypesManager

Returns a new instance of DependencyTypesManager.



19
20
21
# File 'lib/dependency_types_manager.rb', line 19

def initialize(node_type = :anything)
  @node_type = node_type.to_s
end

Class Method Details

.dependency_types_fileObject



5
6
7
# File 'lib/dependency_types_manager.rb', line 5

def self.dependency_types_file
  File.join(File.dirname(__FILE__), 'dependency_types.yaml')
end

.typesObject



15
16
17
# File 'lib/dependency_types_manager.rb', line 15

def self.types
  @@dependable_dependency_types.map {|type, _| type.to_sym}
end

Instance Method Details

#dependable_regexpObject



23
24
25
# File 'lib/dependency_types_manager.rb', line 23

def dependable_regexp
  get_node_type_parameters(@node_type)['dependable_regexp']
end

#dependable_regexp_capture_group_indexObject



27
28
29
# File 'lib/dependency_types_manager.rb', line 27

def dependable_regexp_capture_group_index
  get_node_type_parameters(@node_type)['capture_group_index']
end

#file_name_patternObject



31
32
33
# File 'lib/dependency_types_manager.rb', line 31

def file_name_pattern
  get_node_type_parameters(@node_type)['file_name_pattern']
end

#get_node_type_parameters(node_type) ⇒ Object



35
36
37
38
39
40
41
42
43
44
45
46
47
# File 'lib/dependency_types_manager.rb', line 35

def get_node_type_parameters(node_type)
  node_type_parameters = @@dependable_dependency_types[node_type]
  
  if node_type_parameters
    return node_type_parameters
  else
    return default_parameters = {
      'dependable_regexp' => /.+/,
      'capture_group_index' => 0,
      'file_name_pattern' => '*'
    }
  end
end