Sha256: 48709c9d1b21f5053cb8f0b9ab126bc0b31aa768073c577e8666fd501f109f52
Contents?: true
Size: 1.14 KB
Versions: 53
Compression:
Stored size: 1.14 KB
Contents
# frozen_string_literal: true module Arel # :nodoc: all class TreeManager include Arel::FactoryMethods module StatementMethods def take(limit) @ast.limit = Nodes::Limit.new(Nodes.build_quoted(limit)) if limit self end def offset(offset) @ast.offset = Nodes::Offset.new(Nodes.build_quoted(offset)) if offset self end def order(*expr) @ast.orders = expr self end def key=(key) @ast.key = Nodes.build_quoted(key) end def key @ast.key end def wheres=(exprs) @ast.wheres = exprs end def where(expr) @ast.wheres << expr self end end attr_reader :ast def to_dot collector = Arel::Collectors::PlainString.new collector = Visitors::Dot.new.accept @ast, collector collector.value end def to_sql(engine = Table.engine) collector = Arel::Collectors::SQLString.new collector = engine.connection.visitor.accept @ast, collector collector.value end def initialize_copy(other) super @ast = @ast.clone end end end
Version data entries
53 entries across 50 versions & 6 rubygems