Module: Arel::Nodes

Defined in:
lib/arel/nodes.rb,
lib/arel/nodes/in.rb,
lib/arel/nodes/and.rb,
lib/arel/nodes/node.rb,
lib/arel/nodes/true.rb,
lib/arel/nodes/over.rb,
lib/arel/nodes/with.rb,
lib/arel/nodes/unary.rb,
lib/arel/nodes/count.rb,
lib/arel/nodes/false.rb,
lib/arel/nodes/values.rb,
lib/arel/nodes/binary.rb,
lib/arel/nodes/window.rb,
lib/arel/nodes/extract.rb,
lib/arel/nodes/terminal.rb,
lib/arel/nodes/equality.rb,
lib/arel/nodes/function.rb,
lib/arel/nodes/grouping.rb,
lib/arel/nodes/ascending.rb,
lib/arel/nodes/descending.rb,
lib/arel/nodes/inner_join.rb,
lib/arel/nodes/outer_join.rb,
lib/arel/nodes/string_join.rb,
lib/arel/nodes/sql_literal.rb,
lib/arel/nodes/table_alias.rb,
lib/arel/nodes/select_core.rb,
lib/arel/nodes/join_source.rb,
lib/arel/nodes/named_function.rb,
lib/arel/nodes/infix_operation.rb,
lib/arel/nodes/delete_statement.rb,
lib/arel/nodes/select_statement.rb,
lib/arel/nodes/update_statement.rb,
lib/arel/nodes/insert_statement.rb,
lib/arel/nodes/unqualified_column.rb

Defined Under Namespace

Classes: Addition, And, Ascending, Binary, BindParam, Casted, Count, CurrentRow, DeleteStatement, Descending, Distinct, Division, Equality, Extract, False, Following, Function, Grouping, In, InfixOperation, InnerJoin, InsertStatement, JoinSource, Multiplication, NamedFunction, NamedWindow, Node, OuterJoin, Over, Preceding, Quoted, Range, Rows, SelectCore, SelectStatement, SqlLiteral, StringJoin, Subtraction, TableAlias, True, Unary, UnqualifiedColumn, UpdateStatement, Values, Window, With, WithRecursive

Class Method Summary collapse

Class Method Details

.build_quoted(other, attribute = nil) ⇒ Object



77
78
79
80
81
82
83
84
85
86
87
88
89
# File 'lib/arel/nodes.rb', line 77

def self.build_quoted other, attribute = nil
  case other
  when Arel::Nodes::Node, Arel::Attributes::Attribute, Arel::Nodes::SelectStatement, Arel::Table, Arel::Nodes::BindParam
    other
  else
    case attribute
    when Arel::Attributes::Attribute
      Casted.new other, attribute
    else
      Quoted.new other
    end
  end
end