expression

package
v0.0.0-...-6120cfb Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 24, 2022 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ConnectSubtree

func ConnectSubtree(left, right ast.Evaluable) ast.Evaluable

ConnectSubtree returns connected subtree

func GetAccessorMembers

func GetAccessorMembers(root ast.Evaluable) []string

func NewExpression

func NewExpression(base ast.Evaluable) (Expression, *TupleAccessor)

func PruneSubtree

func PruneSubtree(base ast.Evaluable, shouldBePruned func(evaluable ast.Evaluable) bool) (ast.Evaluable, ast.Evaluable)

PruneSubtree returns Pruned node and remained node

Types

type AbstractExpression

type AbstractExpression struct {
	// contains filtered or unexported fields
}

func NewAbstractExpression

func NewAbstractExpression(base ast.Evaluable) *AbstractExpression

func (*AbstractExpression) AccessorMembers

func (a *AbstractExpression) AccessorMembers() []string

AccessorMembers returns all accessor's members

func (*AbstractExpression) Evaluate

func (a *AbstractExpression) Evaluate(ctx session.Context, evalCtx ast.EvaluateCtx, tuple btuple.Reader, schema bschema.Reader) (expression.Value, error)

type Expression

type Expression interface {
	Evaluate(ctx session.Context, evalCtx ast.EvaluateCtx, tuple btuple.Reader, schema bschema.Reader) (expression.Value, error)
	AccessorMembers() []string
}

type MemoExpression

type MemoExpression struct {
	// contains filtered or unexported fields
}

func (*MemoExpression) AccessorMembers

func (m *MemoExpression) AccessorMembers() []string

func (*MemoExpression) Evaluate

func (m *MemoExpression) Evaluate(ctx session.Context, evalCtx ast.EvaluateCtx, tuple btuple.Reader, schema bschema.Reader) (expression.Value, error)

type TupleAccessor

type TupleAccessor struct {
	// contains filtered or unexported fields
}

func (TupleAccessor) GetMember

func (t TupleAccessor) GetMember(ident string) *ast.Primitive

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL