Sha256: 484349233adf3ce13e4c9103573ede521dcaf5fa364a6d6a77d26c8a2f59ca15

Contents?: true

Size: 877 Bytes

Versions: 2

Compression:

Stored size: 877 Bytes

Contents

module Axiom
  module Adapter
    module Arango
      class Visitor
        class For
          class Unary
            # Visitor for emitting currently defunct LIMIT statements from axiom offset operations
            class Offset < self

              handle(Axiom::Relation::Operation::Offset)

              SIGNED_INT_32_MAX = 2 ** 31 - 1
              LOCAL_NAME = AQL.name_node('offset')
              MAXIMUM = Node::Literal::Primitive::Number.new(SIGNED_INT_32_MAX)

            private

              # Return offset operation
              #
              # @return [AQL::Node]
              #
              # @api private
              #
              def operation
                Node::Operation::Nary::Limit.new(MAXIMUM, Node::Literal::Primitive::Number.new(input.offset))
              end

            end
          end
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
axiom-arango-adapter-0.0.2 lib/axiom/adapter/arango/visitor/for/unary/offset.rb
axiom-arango-adapter-0.0.1 lib/axiom/adapter/arango/visitor/for/unary/offset.rb