Documentation ¶
Index ¶
- func Concat(items ...interface{}) ([]interface{}, error)
- func Key(indexer interface{}) (interface{}, error)
- type Expr
- func AppendToExprList(list, x interface{}) ([]Expr, error)
- func NewArithExpr(left, operand, right interface{}) (Expr, error)
- func NewBoolExpr(left, operand, right interface{}) (Expr, error)
- func NewCmpExpr(left, operand, right interface{}) (Expr, error)
- func NewExprList(x interface{}) ([]Expr, error)
- func NewFuncExpr(name interface{}, args interface{}) (Expr, error)
- func NewLiteral(litType string, lit interface{}) (Expr, error)
- func NewRefExpr(refNode ...interface{}) (Expr, error)
- func NewTernaryArgument(first interface{}) (Expr, error)
- func NewTernaryExpr(ifNode, thenNode, elseNode interface{}) (Expr, error)
- func NewUnaryExpr(operand, tok interface{}) (Expr, error)
- type ExprEvalData
- type ExprEvalResult
- type GetValueExpr
- type IsDefinedExpr
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Expr ¶
type Expr interface { Init(resolver resolve.CompositeResolver, root bool) error //todo can use root to multi-thread eval of root node Eval(scope data.Scope) (interface{}, error) }
func AppendToExprList ¶
func NewArithExpr ¶
func NewBoolExpr ¶
func NewCmpExpr ¶
func NewExprList ¶
func NewFuncExpr ¶
func NewLiteral ¶
func NewRefExpr ¶
func NewTernaryArgument ¶
func NewTernaryExpr ¶
func NewUnaryExpr ¶
type ExprEvalData ¶ added in v1.6.10
type ExprEvalResult ¶ added in v1.6.10
type ExprEvalResult interface {
Detail() ExprEvalData
}
type GetValueExpr ¶
type GetValueExpr struct {
// contains filtered or unexported fields
}
func (*GetValueExpr) Init ¶
func (d *GetValueExpr) Init(resolver resolve.CompositeResolver, root bool) error
type IsDefinedExpr ¶
type IsDefinedExpr struct {
// contains filtered or unexported fields
}
func (*IsDefinedExpr) Init ¶
func (d *IsDefinedExpr) Init(resolver resolve.CompositeResolver, root bool) error
Click to show internal directories.
Click to hide internal directories.