class DSeL::Node
Attributes
parent[R]
@return [Base, nil]
root[R]
@return [Base]
`self` if {#root?}.
subject[R]
@return [Object]
Public Class Methods
new( subject = nil, options = {} )
click to toggle source
@param [Object] subject @param [Hash] options @option options [Base, nil] :parent (nil)
# File lib/dsel/node.rb, line 17 def initialize( subject = nil, options = {} ) @subject = subject @parent = options[:parent] @root = (@parent ? @parent._dsel_node.root : self) end
Public Instance Methods
_dsel_node()
click to toggle source
@private
# File lib/dsel/node.rb, line 28 def _dsel_node self end
calc_node_hash( subject )
click to toggle source
# File lib/dsel/node.rb, line 32 def calc_node_hash( subject ) "#{self.class}:#{subject.object_id}".hash end
hash()
click to toggle source
# File lib/dsel/node.rb, line 36 def hash calc_node_hash( @subject ) end
root?()
click to toggle source
# File lib/dsel/node.rb, line 23 def root? @root == self end