Documentation ¶
Index ¶
- func ListContainsValue(val interface{}, array []interface{}, typ reflect.Type) bool
- type ArrayExpr
- type BiExpr
- type ExprVisitor
- func (v *ExprVisitor) VisitArray(ctx *ast.ArrayContext) interface{}
- func (v *ExprVisitor) VisitAtom(ctx *ast.AtomContext) interface{}
- func (v *ExprVisitor) VisitBinary(ctx *ast.BinaryContext) interface{}
- func (v *ExprVisitor) VisitBinaryExpression(ctx *ast.BinaryExpressionContext) interface{}
- func (v *ExprVisitor) VisitBoolean(ctx *ast.BooleanContext) interface{}
- func (v *ExprVisitor) VisitBooleans(ctx *ast.BooleansContext) interface{}
- func (v *ExprVisitor) VisitCalc(ctx *ast.CalcContext) interface{}
- func (v *ExprVisitor) VisitCalcExpression(ctx *ast.CalcExpressionContext) interface{}
- func (v *ExprVisitor) VisitComparator(ctx *ast.ComparatorContext) interface{}
- func (v *ExprVisitor) VisitComparatorExpression(ctx *ast.ComparatorExpressionContext) interface{}
- func (v *ExprVisitor) VisitFloats(ctx *ast.FloatsContext) interface{}
- func (v *ExprVisitor) VisitFuncname(ctx *ast.FuncnameContext) interface{}
- func (v *ExprVisitor) VisitFunction(ctx *ast.FunctionContext) interface{}
- func (v *ExprVisitor) VisitInExpression(ctx *ast.InExpressionContext) interface{}
- func (v *ExprVisitor) VisitIntegers(ctx *ast.IntegersContext) interface{}
- func (v *ExprVisitor) VisitIsNotTypeExpression(ctx *ast.IsNotTypeExpressionContext) interface{}
- func (v *ExprVisitor) VisitIsTypeExpression(ctx *ast.IsTypeExpressionContext) interface{}
- func (v *ExprVisitor) VisitKind(ctx *ast.KindContext) interface{}
- func (v *ExprVisitor) VisitLiteral(ctx *ast.LiteralContext) interface{}
- func (v *ExprVisitor) VisitMatchExpression(ctx *ast.MatchExpressionContext) interface{}
- func (v *ExprVisitor) VisitMultiplying(ctx *ast.MultiplyingContext) interface{}
- func (v *ExprVisitor) VisitNotExpression(ctx *ast.NotExpressionContext) interface{}
- func (v *ExprVisitor) VisitNotInExpression(ctx *ast.NotInExpressionContext) interface{}
- func (v *ExprVisitor) VisitNumber(ctx *ast.NumberContext) interface{}
- func (v *ExprVisitor) VisitParenExpression(ctx *ast.ParenExpressionContext) interface{}
- func (v *ExprVisitor) VisitParse(ctx *ast.ParseContext) interface{}
- func (v *ExprVisitor) VisitPlus(ctx *ast.PlusContext) interface{}
- func (v *ExprVisitor) VisitPow(ctx *ast.PowContext) interface{}
- func (v *ExprVisitor) VisitRegex(ctx *ast.RegexContext) interface{}
- func (v *ExprVisitor) VisitScientific(ctx *ast.ScientificContext) interface{}
- func (v *ExprVisitor) VisitStrings(ctx *ast.StringsContext) interface{}
- func (v *ExprVisitor) VisitVariable(ctx *ast.VariableContext) interface{}
- func (v *ExprVisitor) VisitVariableExpression(ctx *ast.VariableExpressionContext) interface{}
- type Expression
- type InExpr
- type IsTypeExpr
- type MatchExpr
- type NotExpr
- type OP
- type ValueExpression
- type ValueGetter
- type VariableExpr
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ListContainsValue ¶
Types ¶
type ArrayExpr ¶
type ArrayExpr struct { Array []Expression Type reflect.Type }
func (*ArrayExpr) Eval ¶
func (e *ArrayExpr) Eval(vg ValueGetter) (interface{}, error)
type BiExpr ¶
type BiExpr struct {
// contains filtered or unexported fields
}
func (*BiExpr) Eval ¶
func (e *BiExpr) Eval(vg ValueGetter) (interface{}, error)
type ExprVisitor ¶
type ExprVisitor struct {
*antlr.BaseParseTreeVisitor
}
func (*ExprVisitor) VisitArray ¶
func (v *ExprVisitor) VisitArray(ctx *ast.ArrayContext) interface{}
func (*ExprVisitor) VisitAtom ¶
func (v *ExprVisitor) VisitAtom(ctx *ast.AtomContext) interface{}
func (*ExprVisitor) VisitBinary ¶
func (v *ExprVisitor) VisitBinary(ctx *ast.BinaryContext) interface{}
func (*ExprVisitor) VisitBinaryExpression ¶
func (v *ExprVisitor) VisitBinaryExpression(ctx *ast.BinaryExpressionContext) interface{}
func (*ExprVisitor) VisitBoolean ¶
func (v *ExprVisitor) VisitBoolean(ctx *ast.BooleanContext) interface{}
func (*ExprVisitor) VisitBooleans ¶
func (v *ExprVisitor) VisitBooleans(ctx *ast.BooleansContext) interface{}
func (*ExprVisitor) VisitCalc ¶
func (v *ExprVisitor) VisitCalc(ctx *ast.CalcContext) interface{}
func (*ExprVisitor) VisitCalcExpression ¶
func (v *ExprVisitor) VisitCalcExpression(ctx *ast.CalcExpressionContext) interface{}
func (*ExprVisitor) VisitComparator ¶
func (v *ExprVisitor) VisitComparator(ctx *ast.ComparatorContext) interface{}
func (*ExprVisitor) VisitComparatorExpression ¶
func (v *ExprVisitor) VisitComparatorExpression(ctx *ast.ComparatorExpressionContext) interface{}
func (*ExprVisitor) VisitFloats ¶
func (v *ExprVisitor) VisitFloats(ctx *ast.FloatsContext) interface{}
func (*ExprVisitor) VisitFuncname ¶
func (v *ExprVisitor) VisitFuncname(ctx *ast.FuncnameContext) interface{}
func (*ExprVisitor) VisitFunction ¶
func (v *ExprVisitor) VisitFunction(ctx *ast.FunctionContext) interface{}
func (*ExprVisitor) VisitInExpression ¶
func (v *ExprVisitor) VisitInExpression(ctx *ast.InExpressionContext) interface{}
func (*ExprVisitor) VisitIntegers ¶
func (v *ExprVisitor) VisitIntegers(ctx *ast.IntegersContext) interface{}
func (*ExprVisitor) VisitIsNotTypeExpression ¶
func (v *ExprVisitor) VisitIsNotTypeExpression(ctx *ast.IsNotTypeExpressionContext) interface{}
func (*ExprVisitor) VisitIsTypeExpression ¶
func (v *ExprVisitor) VisitIsTypeExpression(ctx *ast.IsTypeExpressionContext) interface{}
func (*ExprVisitor) VisitKind ¶
func (v *ExprVisitor) VisitKind(ctx *ast.KindContext) interface{}
func (*ExprVisitor) VisitLiteral ¶
func (v *ExprVisitor) VisitLiteral(ctx *ast.LiteralContext) interface{}
func (*ExprVisitor) VisitMatchExpression ¶
func (v *ExprVisitor) VisitMatchExpression(ctx *ast.MatchExpressionContext) interface{}
func (*ExprVisitor) VisitMultiplying ¶
func (v *ExprVisitor) VisitMultiplying(ctx *ast.MultiplyingContext) interface{}
func (*ExprVisitor) VisitNotExpression ¶
func (v *ExprVisitor) VisitNotExpression(ctx *ast.NotExpressionContext) interface{}
func (*ExprVisitor) VisitNotInExpression ¶
func (v *ExprVisitor) VisitNotInExpression(ctx *ast.NotInExpressionContext) interface{}
func (*ExprVisitor) VisitNumber ¶
func (v *ExprVisitor) VisitNumber(ctx *ast.NumberContext) interface{}
func (*ExprVisitor) VisitParenExpression ¶
func (v *ExprVisitor) VisitParenExpression(ctx *ast.ParenExpressionContext) interface{}
func (*ExprVisitor) VisitParse ¶
func (v *ExprVisitor) VisitParse(ctx *ast.ParseContext) interface{}
func (*ExprVisitor) VisitPlus ¶
func (v *ExprVisitor) VisitPlus(ctx *ast.PlusContext) interface{}
func (*ExprVisitor) VisitPow ¶
func (v *ExprVisitor) VisitPow(ctx *ast.PowContext) interface{}
func (*ExprVisitor) VisitRegex ¶
func (v *ExprVisitor) VisitRegex(ctx *ast.RegexContext) interface{}
func (*ExprVisitor) VisitScientific ¶
func (v *ExprVisitor) VisitScientific(ctx *ast.ScientificContext) interface{}
func (*ExprVisitor) VisitStrings ¶
func (v *ExprVisitor) VisitStrings(ctx *ast.StringsContext) interface{}
func (*ExprVisitor) VisitVariable ¶
func (v *ExprVisitor) VisitVariable(ctx *ast.VariableContext) interface{}
func (*ExprVisitor) VisitVariableExpression ¶
func (v *ExprVisitor) VisitVariableExpression(ctx *ast.VariableExpressionContext) interface{}
type Expression ¶
type Expression interface { Eval(vg ValueGetter) (interface{}, error) String() string }
func Compile ¶
func Compile(expr string) (Expression, error)
func NewBiBoolExpr ¶
func NewBiBoolExpr(left, right Expression, op *OP) Expression
func NewBiCalcExpr ¶
func NewBiCalcExpr(left, right Expression, op *OP) Expression
func NewMatchExpr ¶
func NewMatchExpr(left Expression, regex string) (Expression, error)
type InExpr ¶
type InExpr struct {
// contains filtered or unexported fields
}
func (*InExpr) Eval ¶
func (e *InExpr) Eval(vg ValueGetter) (interface{}, error)
type IsTypeExpr ¶
type IsTypeExpr struct {
// contains filtered or unexported fields
}
func (*IsTypeExpr) Eval ¶
func (e *IsTypeExpr) Eval(vg ValueGetter) (interface{}, error)
func (*IsTypeExpr) String ¶
func (e *IsTypeExpr) String() string
type MatchExpr ¶
type MatchExpr struct {
// contains filtered or unexported fields
}
func (*MatchExpr) Eval ¶
func (e *MatchExpr) Eval(vg ValueGetter) (interface{}, error)
type NotExpr ¶
type NotExpr struct {
// contains filtered or unexported fields
}
func (*NotExpr) Eval ¶
func (e *NotExpr) Eval(vg ValueGetter) (interface{}, error)
type ValueExpression ¶
type ValueExpression struct {
// contains filtered or unexported fields
}
func NewValueExpression ¶
func NewValueExpression(value interface{}) *ValueExpression
func (*ValueExpression) Eval ¶
func (e *ValueExpression) Eval(vg ValueGetter) (interface{}, error)
func (*ValueExpression) String ¶
func (e *ValueExpression) String() string
type ValueGetter ¶
type ValueGetter interface {
Get(name string) interface{}
}
type VariableExpr ¶
type VariableExpr struct {
// contains filtered or unexported fields
}
func (*VariableExpr) Eval ¶
func (e *VariableExpr) Eval(vg ValueGetter) (interface{}, error)
func (*VariableExpr) String ¶
func (e *VariableExpr) String() string
Click to show internal directories.
Click to hide internal directories.