class Axiom::Adapter::Arango::Visitor::For

Base class for visitors that emit for statements

Public Instance Methods

local_name() click to toggle source

Return local name

@return [AQL::Node::Name]

@api private

# File lib/axiom/adapter/arango/visitor/for.rb, line 25
def local_name
  self.class::LOCAL_NAME
end
root() click to toggle source

Return root AQL AST

@return [AQL::Node]

@api private

# File lib/axiom/adapter/arango/visitor/for.rb, line 14
def root
  Node::Operation::For.new(local_name, source, body)
end

Private Instance Methods

body() click to toggle source

Return body

@return [AQL::Node]

@api private

# File lib/axiom/adapter/arango/visitor/for.rb, line 47
def body
  return_operation
end
return_operation() click to toggle source

Return return operation

@return [AQL::Node::Operation::Return]

@api private

# File lib/axiom/adapter/arango/visitor/for.rb, line 57
def return_operation
  Node::Operation::Unary::Return.new(return_value)
end
return_value() click to toggle source

Return return value

@return [AQL::Node::Literal::Composed::Document]

@api private

# File lib/axiom/adapter/arango/visitor/for.rb, line 67
def return_value
  visit(input.header)
end
source() click to toggle source

Return source

@return [AQL::Node]

@api private

# File lib/axiom/adapter/arango/visitor/for.rb, line 37
def source
  visit(input.operand)
end