class Object

Public Instance Methods

DSeL( object = self, &block ) click to toggle source
# File lib/dsel/ruby/object.rb, line 19
def DSeL( object = self, &block )
    object.as_dsel( _dsel_self_if_node, &block )
end
DSeLScript( script, object = self ) click to toggle source
# File lib/dsel/ruby/object.rb, line 23
def DSeLScript( script, object = self )
    object.dsel_script( script, _dsel_self_if_node )
end
DirectDSeL( object = self, &block ) click to toggle source
# File lib/dsel/ruby/object.rb, line 27
def DirectDSeL( object = self, &block )
    object.as_direct_dsel( _dsel_self_if_node, &block )
end
DirectDSeLScript( script, object = self ) click to toggle source
# File lib/dsel/ruby/object.rb, line 31
def DirectDSeLScript( script, object = self )
    object.direct_dsel_script( script, _dsel_self_if_node )
end
as_direct_dsel( parent = nil, &block ) click to toggle source
# File lib/dsel/ruby/object.rb, line 11
def as_direct_dsel( parent = nil, &block )
    _dsel_determine_node( DSeL::DSL::Nodes::Direct, parent ).run( &block )
end
as_dsel( parent = nil, &block ) click to toggle source
# File lib/dsel/ruby/object.rb, line 3
def as_dsel( parent = nil, &block )
    _dsel_determine_node( DSeL::DSL::Nodes::Proxy, parent ).run( &block )
end
direct_dsel_script( script, parent = nil ) click to toggle source
# File lib/dsel/ruby/object.rb, line 15
def direct_dsel_script( script, parent = nil )
    _dsel_determine_node( DSeL::DSL::Nodes::Direct, parent ).run( script )
end
dsel_script( script, parent = nil ) click to toggle source
# File lib/dsel/ruby/object.rb, line 7
def dsel_script( script, parent = nil )
    _dsel_determine_node( DSeL::DSL::Nodes::Proxy, parent ).run( script )
end

Private Instance Methods

_dsel_determine_node( klass, parent = nil ) click to toggle source
# File lib/dsel/ruby/object.rb, line 41
def _dsel_determine_node( klass, parent = nil )
    return klass.new( self ) if !parent

    if parent._dsel_node.is_a?( klass )
        parent._dsel_node.node_for( self )
    else
        node = klass.new( self, parent: parent )
        parent._dsel_node.cache_node node
        node
    end
end
_dsel_self_if_node() click to toggle source
# File lib/dsel/ruby/object.rb, line 37
def _dsel_self_if_node
    respond_to?( DSeL::DSL::Nodes::Base::Environment::DSEL_NODE_ACCESSOR ) ? self : nil
end