forked from mirror/gorm
31 lines
616 B
Go
31 lines
616 B
Go
package clause
|
|
|
|
// Expression expression interface
|
|
type Expression interface {
|
|
Build(builder Builder)
|
|
}
|
|
|
|
// NegationExpressionBuilder negation expression builder
|
|
type NegationExpressionBuilder interface {
|
|
NegationBuild(builder Builder)
|
|
}
|
|
|
|
// Builder builder interface
|
|
type Builder interface {
|
|
WriteByte(byte) error
|
|
Write(sql ...string) error
|
|
WriteQuoted(field interface{}) error
|
|
AddVar(vars ...interface{}) string
|
|
Quote(field interface{}) string
|
|
}
|
|
|
|
// Expr raw expression
|
|
type Expr struct {
|
|
Value string
|
|
}
|
|
|
|
// Build build raw expression
|
|
func (expr Expr) Build(builder Builder) {
|
|
builder.Write(expr.Value)
|
|
}
|