aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/arel/nodes.rb
blob: 5af0e532e26c5b9eabe9dd2838e0c21298ded23b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# frozen_string_literal: true

# node
require "arel/nodes/node"
require "arel/nodes/node_expression"
require "arel/nodes/select_statement"
require "arel/nodes/select_core"
require "arel/nodes/insert_statement"
require "arel/nodes/update_statement"
require "arel/nodes/bind_param"

# terminal

require "arel/nodes/terminal"
require "arel/nodes/true"
require "arel/nodes/false"

# unary
require "arel/nodes/unary"
require "arel/nodes/grouping"
require "arel/nodes/ascending"
require "arel/nodes/descending"
require "arel/nodes/unqualified_column"
require "arel/nodes/with"

# binary
require "arel/nodes/binary"
require "arel/nodes/equality"
require "arel/nodes/in" # Why is this subclassed from equality?
require "arel/nodes/join_source"
require "arel/nodes/delete_statement"
require "arel/nodes/table_alias"
require "arel/nodes/infix_operation"
require "arel/nodes/unary_operation"
require "arel/nodes/over"
require "arel/nodes/matches"
require "arel/nodes/regexp"

# nary
require "arel/nodes/and"

# function
# FIXME: Function + Alias can be rewritten as a Function and Alias node.
# We should make Function a Unary node and deprecate the use of "aliaz"
require "arel/nodes/function"
require "arel/nodes/count"
require "arel/nodes/extract"
require "arel/nodes/values"
require "arel/nodes/values_list"
require "arel/nodes/named_function"

# windows
require "arel/nodes/window"

# conditional expressions
require "arel/nodes/case"

# joins
require "arel/nodes/full_outer_join"
require "arel/nodes/inner_join"
require "arel/nodes/outer_join"
require "arel/nodes/right_outer_join"
require "arel/nodes/string_join"

require "arel/nodes/sql_literal"

require "arel/nodes/casted"