Class: RailsBestPractices::Core::Mod

Inherits:
Object
  • Object
show all
Defined in:
lib/rails_best_practices/core/modules.rb

Overview

Module info include module name and module spaces.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(module_name, modules) ⇒ Mod

Returns a new instance of Mod.



21
22
23
24
25
# File 'lib/rails_best_practices/core/modules.rb', line 21

def initialize(module_name, modules)
  @module_name = module_name
  @modules = modules
  @descendants = []
end

Instance Attribute Details

#descendantsObject (readonly)

Returns the value of attribute descendants.



19
20
21
# File 'lib/rails_best_practices/core/modules.rb', line 19

def descendants
  @descendants
end

Instance Method Details

#add_descendant(descendant) ⇒ Object



27
28
29
# File 'lib/rails_best_practices/core/modules.rb', line 27

def add_descendant(descendant)
  @descendants << descendant
end

#to_sObject



31
32
33
34
35
36
37
# File 'lib/rails_best_practices/core/modules.rb', line 31

def to_s
  if @modules.empty?
    @module_name
  else
    @modules.map { |modu| "#{modu}::" }.join('') + @module_name
  end
end