Parent

Included Modules

Class Index [+]

Quicksearch

Arel::Nodes::Node

 

Abstract base class for all AST nodes

Public Instance Methods

and(right) click to toggle source
 

Factory method to create an Nodes::And node.

    # File lib/arel/nodes/node.rb, line 25
25:       def and right
26:         Nodes::And.new [self, right]
27:       end
each(&block) click to toggle source

Iterate through AST, nodes will be yielded depth-first

    # File lib/arel/nodes/node.rb, line 39
39:       def each &block
40:         return enum_for(:each) unless block_given?
41: 
42:         ::Arel::Visitors::DepthFirst.new(block).accept self
43:       end
not() click to toggle source
 

Factory method to create a Nodes::Not node that has the recipient of the caller as a child.

    # File lib/arel/nodes/node.rb, line 12
12:       def not
13:         Nodes::Not.new self
14:       end
or(right) click to toggle source
 

Factory method to create a Nodes::Grouping node that has an Nodes::Or node as a child.

    # File lib/arel/nodes/node.rb, line 19
19:       def or right
20:         Nodes::Grouping.new Nodes::Or.new(self, right)
21:       end
to_sql(engine = Table.engine) click to toggle source

FIXME: this method should go away. I don’t like people calling to_sql on non-head nodes. This forces us to walk the AST until we can find a node that has a “relation” member.

Maybe we should just use `Table.engine`? :’(

    # File lib/arel/nodes/node.rb, line 34
34:       def to_sql engine = Table.engine
35:         engine.connection.visitor.accept self
36:       end

Disabled; run with --debug to generate this.

[Validate]

Generated with the Darkfish Rdoc Generator 1.1.6.