...
1 package exp
2
3 type sqlWindowFunctionExpression struct {
4 fn SQLFunctionExpression
5 windowName IdentifierExpression
6 window WindowExpression
7 }
8
9 func NewSQLWindowFunctionExpression(
10 fn SQLFunctionExpression,
11 windowName IdentifierExpression,
12 window WindowExpression) SQLWindowFunctionExpression {
13 return sqlWindowFunctionExpression{
14 fn: fn,
15 windowName: windowName,
16 window: window,
17 }
18 }
19
20 func (swfe sqlWindowFunctionExpression) clone() sqlWindowFunctionExpression {
21 return sqlWindowFunctionExpression{
22 fn: swfe.fn.Clone().(SQLFunctionExpression),
23 windowName: swfe.windowName,
24 window: swfe.window,
25 }
26 }
27
28 func (swfe sqlWindowFunctionExpression) Clone() Expression {
29 return swfe.clone()
30 }
31
32 func (swfe sqlWindowFunctionExpression) Expression() Expression {
33 return swfe
34 }
35
36 func (swfe sqlWindowFunctionExpression) As(val interface{}) AliasedExpression {
37 return NewAliasExpression(swfe, val)
38 }
39 func (swfe sqlWindowFunctionExpression) Eq(val interface{}) BooleanExpression { return eq(swfe, val) }
40 func (swfe sqlWindowFunctionExpression) Neq(val interface{}) BooleanExpression { return neq(swfe, val) }
41 func (swfe sqlWindowFunctionExpression) Gt(val interface{}) BooleanExpression { return gt(swfe, val) }
42 func (swfe sqlWindowFunctionExpression) Gte(val interface{}) BooleanExpression { return gte(swfe, val) }
43 func (swfe sqlWindowFunctionExpression) Lt(val interface{}) BooleanExpression { return lt(swfe, val) }
44 func (swfe sqlWindowFunctionExpression) Lte(val interface{}) BooleanExpression { return lte(swfe, val) }
45 func (swfe sqlWindowFunctionExpression) Between(val RangeVal) RangeExpression {
46 return between(swfe, val)
47 }
48
49 func (swfe sqlWindowFunctionExpression) NotBetween(val RangeVal) RangeExpression {
50 return notBetween(swfe, val)
51 }
52
53 func (swfe sqlWindowFunctionExpression) Like(val interface{}) BooleanExpression {
54 return like(swfe, val)
55 }
56
57 func (swfe sqlWindowFunctionExpression) NotLike(val interface{}) BooleanExpression {
58 return notLike(swfe, val)
59 }
60
61 func (swfe sqlWindowFunctionExpression) ILike(val interface{}) BooleanExpression {
62 return iLike(swfe, val)
63 }
64
65 func (swfe sqlWindowFunctionExpression) NotILike(val interface{}) BooleanExpression {
66 return notILike(swfe, val)
67 }
68
69 func (swfe sqlWindowFunctionExpression) RegexpLike(val interface{}) BooleanExpression {
70 return regexpLike(swfe, val)
71 }
72
73 func (swfe sqlWindowFunctionExpression) RegexpNotLike(val interface{}) BooleanExpression {
74 return regexpNotLike(swfe, val)
75 }
76
77 func (swfe sqlWindowFunctionExpression) RegexpILike(val interface{}) BooleanExpression {
78 return regexpILike(swfe, val)
79 }
80
81 func (swfe sqlWindowFunctionExpression) RegexpNotILike(val interface{}) BooleanExpression {
82 return regexpNotILike(swfe, val)
83 }
84
85 func (swfe sqlWindowFunctionExpression) In(vals ...interface{}) BooleanExpression {
86 return in(swfe, vals...)
87 }
88
89 func (swfe sqlWindowFunctionExpression) NotIn(vals ...interface{}) BooleanExpression {
90 return notIn(swfe, vals...)
91 }
92 func (swfe sqlWindowFunctionExpression) Is(val interface{}) BooleanExpression { return is(swfe, val) }
93 func (swfe sqlWindowFunctionExpression) IsNot(val interface{}) BooleanExpression {
94 return isNot(swfe, val)
95 }
96 func (swfe sqlWindowFunctionExpression) IsNull() BooleanExpression { return is(swfe, nil) }
97 func (swfe sqlWindowFunctionExpression) IsNotNull() BooleanExpression { return isNot(swfe, nil) }
98 func (swfe sqlWindowFunctionExpression) IsTrue() BooleanExpression { return is(swfe, true) }
99 func (swfe sqlWindowFunctionExpression) IsNotTrue() BooleanExpression { return isNot(swfe, true) }
100 func (swfe sqlWindowFunctionExpression) IsFalse() BooleanExpression { return is(swfe, false) }
101 func (swfe sqlWindowFunctionExpression) IsNotFalse() BooleanExpression { return isNot(swfe, false) }
102
103 func (swfe sqlWindowFunctionExpression) Asc() OrderedExpression { return asc(swfe) }
104 func (swfe sqlWindowFunctionExpression) Desc() OrderedExpression { return desc(swfe) }
105
106 func (swfe sqlWindowFunctionExpression) Func() SQLFunctionExpression {
107 return swfe.fn
108 }
109
110 func (swfe sqlWindowFunctionExpression) Window() WindowExpression {
111 return swfe.window
112 }
113
114 func (swfe sqlWindowFunctionExpression) WindowName() IdentifierExpression {
115 return swfe.windowName
116 }
117
118 func (swfe sqlWindowFunctionExpression) HasWindow() bool {
119 return swfe.window != nil
120 }
121
122 func (swfe sqlWindowFunctionExpression) HasWindowName() bool {
123 return swfe.windowName != nil
124 }
125
View as plain text