debian-mirror-gitlab/debian/gems-compat/arel-8.0.0/lib/arel/factory_methods.rb

44 lines
846 B
Ruby

# frozen_string_literal: true
module Arel
###
# Methods for creating various nodes
module FactoryMethods
def create_true
Arel::Nodes::True.new
end
def create_false
Arel::Nodes::False.new
end
def create_table_alias relation, name
Nodes::TableAlias.new(relation, name)
end
def create_join to, constraint = nil, klass = Nodes::InnerJoin
klass.new(to, constraint)
end
def create_string_join to
create_join to, nil, Nodes::StringJoin
end
def create_and clauses
Nodes::And.new clauses
end
def create_on expr
Nodes::On.new expr
end
def grouping expr
Nodes::Grouping.new expr
end
###
# Create a LOWER() function
def lower column
Nodes::NamedFunction.new 'LOWER', [Nodes.build_quoted(column)]
end
end
end