Class: HackTree::Node::Base
- Inherits:
-
Object
- Object
- HackTree::Node::Base
- Defined in:
- lib/hack_tree/node/base.rb
Instance Attribute Summary collapse
-
#brief_desc ⇒ Object
Brief 1-line description, if present.
-
#full_desc ⇒ Object
Multi-line description, if present.
-
#name ⇒ Object
Node name, Symbol.
-
#parent ⇒ Object
Parent group or
nil
.
Instance Method Summary collapse
-
#global_name ⇒ Object
global_name # => “hello” global_name # => “rails.db.tables”.
-
#initialize(attrs = {}) ⇒ Base
constructor
A new instance of Base.
Constructor Details
#initialize(attrs = {}) ⇒ Base
16 17 18 |
# File 'lib/hack_tree/node/base.rb', line 16 def initialize(attrs = {}) attrs.each {|k, v| send("#{k}=", v)} end |
Instance Attribute Details
#brief_desc ⇒ Object
Brief 1-line description, if present.
5 6 7 |
# File 'lib/hack_tree/node/base.rb', line 5 def brief_desc @brief_desc end |
#full_desc ⇒ Object
Multi-line description, if present.
8 9 10 |
# File 'lib/hack_tree/node/base.rb', line 8 def full_desc @full_desc end |
#name ⇒ Object
Node name, Symbol.
11 12 13 |
# File 'lib/hack_tree/node/base.rb', line 11 def name @name end |
#parent ⇒ Object
Parent group or nil
.
14 15 16 |
# File 'lib/hack_tree/node/base.rb', line 14 def parent @parent end |
Instance Method Details
#global_name ⇒ Object
global_name # => “hello”
global_name # => "rails.db.tables"
22 23 24 25 26 27 28 29 30 31 |
# File 'lib/hack_tree/node/base.rb', line 22 def global_name pcs = [] cursor = self begin pcs << cursor.name cursor = cursor.parent end while cursor pcs.reverse.join(".") end |