github.com/tencent/goom@v1.0.1/arg/builder.go (about) 1 package arg 2 3 // AnyValues 匹配任意参数值 4 var AnyValues = Any() 5 6 // Any 匹配任意参数值 7 func Any() *AnyExpr { 8 return &AnyExpr{} 9 } 10 11 // Equals 创建参数比较表达式 12 func Equals(arg interface{}) *EqualsExpr { 13 return &EqualsExpr{arg: arg} 14 } 15 16 // In 包含表达式的参数比较 17 func In(values ...interface{}) *InExpr { 18 return &InExpr{ 19 args: values, 20 } 21 } 22 23 // Field 属性值匹配表达式 24 func Field(name string) *Builder { 25 return (&Builder{}).Field(name) 26 } 27 28 // Builder Expr 表达式构建器, 根据规则构建 Expr 表达式子类对象 29 // TODO 实现表达式树 30 type Builder struct { 31 } 32 33 // Field 指定属性名称 34 func (b *Builder) Field(name string) *Builder { 35 return b 36 } 37 38 // In 添加 In 字句 39 func (b *Builder) In(values ...interface{}) *Builder { 40 return b 41 }