Versions in this module Expand all Collapse all v2 v2.0.0 Jan 21, 2024 Changes in this version + var AdditionOperator AdditiveOperator = additionOperator + var DivisionOperator MultiplicativeOperator = divideOperator + var ErrBoundEdgeInMergeClause = errors.New("Bound edge in merge clause") + var ErrCannotDeleteAttachedNode = errors.New("Cannot delete attached node") + var ErrColumnsHaveDifferentNames = errors.New("Columns have different names") + var ErrColumnsHaveDifferentTypes = errors.New("Columns have different types") + var ErrCursorsHaveDifferentSizes = errors.New("Cursors have different number of columns") + var ErrDivideByZero = errors.New("Divide by zero") + var ErrEdgeHasMultipleLabels = errors.New("Edge has multiple labels") + var ErrEdgeHasRange = errors.New("Edge has a range") + var ErrIntRequired = errors.New("Integer value required") + var ErrInvalidAdditiveOperation = errors.New("Invalid additive operation") + var ErrInvalidComparison = errors.New("Invalid comparison") + var ErrInvalidDateOperation = errors.New("Invalid date operation") + var ErrInvalidDivisionOperation = errors.New("Invalid division operation") + var ErrInvalidDurationOperation = errors.New("Invalid duration operation") + var ErrInvalidMapKey = errors.New("Invalid map key") + var ErrInvalidModOperation = errors.New("Invalid mod operation") + var ErrInvalidMultiplicativeOperation = errors.New("Invalid multiplicative operation") + var ErrInvalidPowerOperation = errors.New("Invalid power operation") + var ErrInvalidRelationshipPattern = errors.New("Invalid relationship pattern") + var ErrInvalidStringOperation = errors.New("Invalid string operation") + var ErrInvalidUnaryOperation = errors.New("Invalid unary operation") + var ErrLValueRequired = errors.New("lvalue required") + var ErrNoBoundNodes = errors.New("No bound nodes in the match expression") + var ErrNotABooleanExpression = errors.New("Not a boolean expression") + var ErrNotAList = errors.New("Not a list") + var ErrNotANode = errors.New("Not a node") + var ErrNotAStringExpression = errors.New("Not a string expression") + var ErrNotAnEdge = errors.New("Not a relationship") + var ErrNotAnObject = errors.New("Not an object") + var ErrParameterNotAnObject = errors.New("Parameter value is not an object") + var ModOperator MultiplicativeOperator = modOperator + var MultiplicationOperator MultiplicativeOperator = multiplyOperator + var SubtractionOperator AdditiveOperator = subtractionOperator + func GetAllRows(rs Cursor) ([][]Value, error) + func GetParser(input string) *parser.CypherParser + func IsPrimitive(v any) bool + func OC_AnonymousPatternPart(ctx *parser.OC_AnonymousPatternPartContext, part *PatternPart) error + func OC_FunctionName(ctx *parser.OC_FunctionNameContext) (namespace, name string) + func OC_Namespace(ctx *parser.OC_NamespaceContext) string + func OC_NodeLabels(ctx *parser.OC_NodeLabelsContext) []string + func OC_PatternElement(ctx *parser.OC_PatternElementContext, part *PatternPart) error + func OC_ProcedureName(ctx *parser.OC_ProcedureNameContext) (namespace, name string) + func OC_PropertyKeyName(ctx *parser.OC_PropertyKeyNameContext) string + func OC_PropertyLookup(ctx *parser.OC_PropertyLookupContext) string + func OC_RelTypeName(ctx *parser.OC_RelTypeNameContext) string + func OC_RelationshipTypes(ctx *parser.OC_RelationshipTypesContext) []string + func OC_ReservedWord(ctx *parser.OC_ReservedWordContext) string + func OC_SchemaName(ctx *parser.OC_SchemaNameContext) string + func OC_StringOperatorExpression(ctx *parser.OC_StringOperatorExpressionContext) (op StringOperator, expr Expression, err error) + func OC_SymbolicName(ctx *parser.OC_SymbolicNameContext) string + func OC_Variable(ctx *parser.OC_VariableContext) string + func RegisterGlobalFunc(fn ...Function) + func RegisterGlobalProc(ps ...Procedure) + func ResultRowToContext(row []Value, rs CursorColumns, target *EvalContext) + type AddOrSubtractExpression struct + Expr []Expression + Op []AdditiveOperator + ResultType ValueType + func (expr *AddOrSubtractExpression) Constraints(ctx *EvalContext) Constraint + func (expr *AddOrSubtractExpression) Evaluate(ctx *EvalContext) (Value, error) + func (expr AddOrSubtractExpression) Tree() any + func (expr AddOrSubtractExpression) Type() ValueType + type AdditiveOperator interface + type AndExpression struct + Parts []Expression + func (AndExpression) Type() ValueType + func (expr *AndExpression) Constraints(ctx *EvalContext) Constraint + func (expr *AndExpression) Evaluate(ctx *EvalContext) (Value, error) + func (expr AndExpression) Tree() any + type BasicCursor struct + At int + Cols BasicCursorColumns + Rows [][]Value + func (set *BasicCursor) Next() bool + func (set *BasicCursor) Row() []Value + func (set BasicCursor) Column(index int) CursorColumn + func (set BasicCursor) Err() error + func (set BasicCursor) Len() int + func (set BasicCursor) NColumns() int + type BasicCursorColumns []CursorColumn + func NewBasicCursorColumns(in CursorColumns) BasicCursorColumns + func (b BasicCursorColumns) Column(index int) CursorColumn + func (b BasicCursorColumns) NColumns() int + type CaseAlternative struct + Then Expression + When Expression + func OC_CaseAlternative(ctx *parser.OC_CaseAlternativesContext) (CaseAlternative, error) + type CaseClause struct + Alternatives []CaseAlternative + Default Expression + ResultType ValueType + Test Expression + func (expr *CaseClause) Constraints(ctx *EvalContext) Constraint + func (expr *CaseClause) Evaluate(ctx *EvalContext) (Value, error) + func (expr CaseClause) Tree() any + func (expr CaseClause) Type() ValueType + type ComparisonExpression struct + Left Expression + Op func(int) bool + OpStr string + Right Expression + func (ComparisonExpression) Type() ValueType + func (expr *ComparisonExpression) Constraints(ctx *EvalContext) Constraint + func (expr *ComparisonExpression) Evaluate(ctx *EvalContext) (Value, error) + func (expr ComparisonExpression) Tree() any + type ConjunctiveConstraint struct + Parts []Constraint + func (c ConjunctiveConstraint) BuildFilter(varName string) map[string]PropertyCriteria + func (c ConjunctiveConstraint) CanInvert() bool + func (c ConjunctiveConstraint) Invert() Constraint + type Constraint interface + BuildFilter func(varName string) map[string]PropertyCriteria + CanInvert func() bool + Invert func() Constraint + type ConstraintOperator int + const NoConstraintOperator + type CreateClause struct + Pattern Pattern + func (c CreateClause) Tree() any + func (clause *CreateClause) Update(ctx *EvalContext, input Cursor) (Cursor, error) + type Cursor interface + Err func() error + Len func() int + Next func() bool + Row func() []Value + func ParseAndEvaluate(input string, ctx *EvalContext) (Cursor, error) + type CursorColumn struct + Index int + Name string + Type ValueType + func (c CursorColumn) IsCompatible(col CursorColumn) error + type CursorColumns interface + Column func(int) CursorColumn + NColumns func() int + type Date time.Time + func NewDate(t time.Time) Date + func (t Date) String() string + func (t Date) Time() time.Time + type DeleteClause struct + Detach bool + Exprs []Expression + func (d DeleteClause) Tree() any + func (del *DeleteClause) Update(ctx *EvalContext, input Cursor) (Cursor, error) + type DisjunctiveConstraint struct + Parts []Constraint + func (c DisjunctiveConstraint) BuildFilter(varName string) map[string]PropertyCriteria + func (c DisjunctiveConstraint) CanInvert() bool + func (c DisjunctiveConstraint) Invert() Constraint + type Duration struct + Days int64 + Months int64 + Nanos int + Seconds int64 + func (d Duration) String() string + func (d1 Duration) Equal(d2 Duration) bool + type Edge interface + From func() Node + GetProperties func() map[string]Value + GetProperty func(string) Value + ID func() any + Label func() string + RemoveProperty func(string) + SetLabel func(string) + SetProperties func(map[string]Value) + SetProperty func(string, Value) + To func() Node + type EdgeCriteria struct + AtLeastOneLabel []string + Dir EdgeDirection + Max int + Min int + MustHaveLabel string + Name string + Properties map[string]PropertyCriteria + type EdgeDirection int + const EdgeDirectionLeft + const EdgeDirectionNone + const EdgeDirectionRight + type ElementAccessExpression struct + Key Expression + Left Expression + func (ElementAccessExpression) Type() ValueType + func (expr *ElementAccessExpression) Constraints(ctx *EvalContext) Constraint + func (expr *ElementAccessExpression) Evaluate(ctx *EvalContext) (Value, error) + func (expr ElementAccessExpression) Tree() any + type ErrColumnsIncompatible struct + Err error + Index int + func (e ErrColumnsIncompatible) Error() string + func (e ErrColumnsIncompatible) Unwrap() error + type ErrInvalidExpression struct + Expr string + func (e ErrInvalidExpression) Error() string + type ErrInvalidFunctionCall struct + Msg string + func (e ErrInvalidFunctionCall) Error() string + type ErrInvalidIndirection struct + Name string + func (err ErrInvalidIndirection) Error() string + type ErrInvalidListIndex struct + Index any + func (err ErrInvalidListIndex) Error() string + type ErrNodeAlreadyDefined struct + Name string + func (e ErrNodeAlreadyDefined) Error() string + type ErrNodeValueRequired struct + Name string + func (e ErrNodeValueRequired) Error() string + type ErrResultFieldNotFound struct + Name string + func (err ErrResultFieldNotFound) Error() string + type ErrSyntax string + func (e ErrSyntax) Error() string + type ErrUnknownFunction struct + Name string + func (e ErrUnknownFunction) Error() string + type ErrUnknownParameter struct + Key string + func (e ErrUnknownParameter) Error() string + type ErrUnknownProcedure struct + Name string + func (err ErrUnknownProcedure) Error() string + type ErrUnknownVariable struct + Name string + func (e ErrUnknownVariable) Error() string + type ErrVarRedefined struct + Name string + func (e ErrVarRedefined) Error() string + type ErrorListener struct + func (lst *ErrorListener) Err() error + func (lst *ErrorListener) SyntaxError(recognizer antlr.Recognizer, offendingSymbol interface{}, line, column int, ...) + type EvalContext struct + func NewEvalContext(graph Graph) *EvalContext + func (ctx *EvalContext) GetFunction(namespace, name string) (Function, error) + func (ctx *EvalContext) GetParameter(key string) (Value, error) + func (ctx *EvalContext) GetVar(name string) (Value, error) + func (ctx *EvalContext) RemoveVar(name string) + func (ctx *EvalContext) SetParameter(key string, value Value) *EvalContext + func (ctx *EvalContext) SetVar(name string, value Value) + func (ctx *EvalContext) String() string + func (ctx *EvalContext) SubContext() *EvalContext + func (ctx *EvalContext) VarDefined(name string) bool + func (ctx *EvalContext) WithContext(c context.Context) *EvalContext + type Expression interface + Constraints func(*EvalContext) Constraint + Evaluate func(*EvalContext) (Value, error) + Tree func() any + Type func() ValueType + func OC_AddOrSubtractExpression(ctx *parser.OC_AddOrSubtractExpressionContext) (Expression, error) + func OC_AndExpression(ctx *parser.OC_AndExpressionContext) (Expression, error) + func OC_Atom(ctx *parser.OC_AtomContext) (Expression, error) + func OC_BooleanLiteral(ctx *parser.OC_BooleanLiteralContext) Expression + func OC_CaseExpression(ctx *parser.OC_CaseExpressionContext) (Expression, error) + func OC_ComparisonExpression(ctx *parser.OC_ComparisonExpressionContext) (Expression, error) + func OC_DoubleLiteral(ctx *parser.OC_DoubleLiteralContext) (Expression, error) + func OC_Expression(ctx *parser.OC_ExpressionContext) (Expression, error) + func OC_FunctionInvocation(ctx *parser.OC_FunctionInvocationContext) (Expression, error) + func OC_IntegerLiteral(ctx *parser.OC_IntegerLiteralContext) (Expression, error) + func OC_Limit(ctx *parser.OC_LimitContext) (Expression, error) + func OC_ListComprehension(ctx *parser.OC_ListComprehensionContext) (Expression, error) + func OC_ListLiteral(ctx *parser.OC_ListLiteralContext) (Expression, error) + func OC_ListOperatorExpression(ctx *parser.OC_ListOperatorExpressionContext) (in, e1, e2 Expression, err error) + func OC_Literal(ctx *parser.OC_LiteralContext) (Expression, error) + func OC_MapLiteral(ctx *parser.OC_MapLiteralContext) (Expression, error) + func OC_MultiplyDivideModuloExpression(ctx *parser.OC_MultiplyDivideModuloExpressionContext) (Expression, error) + func OC_NotExpression(ctx *parser.OC_NotExpressionContext) (Expression, error) + func OC_NumberLiteral(ctx *parser.OC_NumberLiteralContext) (Expression, error) + func OC_OrExpression(ctx *parser.OC_OrExpressionContext) (Expression, error) + func OC_Parameter(ctx *parser.OC_ParameterContext) Expression + func OC_PowerOfExpression(ctx *parser.OC_PowerOfExpressionContext) (Expression, error) + func OC_PropertyExpression(ctx *parser.OC_PropertyExpressionContext) (Expression, error) + func OC_PropertyOrLabelsExpression(ctx *parser.OC_PropertyOrLabelsExpressionContext) (Expression, error) + func OC_Skip(ctx *parser.OC_SkipContext) (Expression, error) + func OC_StringListNullOperatorExpression(ctx *parser.OC_StringListNullOperatorExpressionContext) (Expression, error) + func OC_UnaryAddOrSubtractExpression(ctx *parser.OC_UnaryAddOrSubtractExpressionContext) (Expression, error) + func OC_Where(ctx *parser.OC_WhereContext) (Expression, error) + func OC_XorExpression(ctx *parser.OC_XorExpressionContext) (Expression, error) + type FilterExpression struct + InExpr Expression + Variable string + Where Expression + func OC_FilterExpression(ctx *parser.OC_FilterExpressionContext) (*FilterExpression, error) + func (FilterExpression) Type() ValueType + func (expr FilterExpression) Tree() any + type Function struct + Func func(*EvalContext, []Expression) (Value, error) + MaxArgs int + MinArgs int + Name string + Pure bool + ValueFunc func(*EvalContext, []Value) (Value, error) + type FunctionInvocationExpression struct + Args []Expression + Distinct bool + Name string + Namespace string + func (FunctionInvocationExpression) Type() ValueType + func (expr *FunctionInvocationExpression) Constraints(ctx *EvalContext) Constraint + func (expr *FunctionInvocationExpression) Evaluate(ctx *EvalContext) (Value, error) + func (expr FunctionInvocationExpression) Tree() any + type Graph interface + DeleteEdge func(Edge) error + DetachDeleteNode func(Node) error + NewEdge func(from, to Node, label string, properties map[string]Value) (Edge, error) + NewNode func([]string, map[string]Value) (Node, error) + SearchPattern func(*EvalContext, PathCriteria) (GraphCursor, error) + type GraphCursor interface + Close func() + Err func() error + Next func() bool + Path func() Path + SymbolValue func(string) Value + type InExpression struct + Left Expression + List Expression + func (InExpression) Type() ValueType + func (expr *InExpression) Constraints(ctx *EvalContext) Constraint + func (expr *InExpression) Evaluate(ctx *EvalContext) (Value, error) + func (expr InExpression) Tree() any + type LPGEdge struct + Edge *lpg.Edge + func (edge LPGEdge) From() Node + func (edge LPGEdge) GetProperties() map[string]Value + func (edge LPGEdge) GetProperty(name string) Value + func (edge LPGEdge) ID() any + func (edge LPGEdge) Label() string + func (edge LPGEdge) RemoveProperty(name string) + func (edge LPGEdge) SetLabel(label string) + func (edge LPGEdge) SetProperties(properties map[string]Value) + func (edge LPGEdge) SetProperty(name string, value Value) + func (edge LPGEdge) To() Node + type LPGGraph struct + Graph *lpg.Graph + func NewLPGGraph(g *lpg.Graph) LPGGraph + func (g LPGGraph) DeleteEdge(edge Edge) error + func (g LPGGraph) DetachDeleteNode(node Node) error + func (g LPGGraph) NewEdge(from, to Node, label string, properties map[string]Value) (Edge, error) + func (g LPGGraph) NewNode(labels []string, properties map[string]Value) (Node, error) + func (g LPGGraph) SearchPattern(ctx *EvalContext, crit PathCriteria) (GraphCursor, error) + type LPGGraphCursor struct + func (cursor *LPGGraphCursor) Close() + func (cursor *LPGGraphCursor) Err() error + func (cursor *LPGGraphCursor) Next() bool + func (cursor *LPGGraphCursor) Path() Path + func (cursor *LPGGraphCursor) SymbolValue(sym string) Value + type LPGNode struct + Node *lpg.Node + func (node LPGNode) GetProperties() map[string]Value + func (node LPGNode) GetProperty(name string) Value + func (node LPGNode) HasIncomingEdges() bool + func (node LPGNode) HasLabel(label string) bool + func (node LPGNode) HasOutgoingEdges() bool + func (node LPGNode) ID() any + func (node LPGNode) Labels() []string + func (node LPGNode) Native() any + func (node LPGNode) RemoveProperty(name string) + func (node LPGNode) SetLabels(labels []string) + func (node LPGNode) SetProperties(properties map[string]Value) + func (node LPGNode) SetProperty(name string, value Value) + type LValue struct + func NewLValue(v Value) LValue + func (LValue) Const() bool + func (expr LValue) Constraints(ctx *EvalContext) Constraint + func (v LValue) Evaluate(*EvalContext) (Value, error) + func (v LValue) Get() any + func (v LValue) Set(val any) + func (v LValue) Tree() any + func (v LValue) Type() ValueType + type ListComprehensionExpression struct + Expr Expression + Filter *FilterExpression + func (ListComprehensionExpression) Type() ValueType + func (expr *ListComprehensionExpression) Constraints(ctx *EvalContext) Constraint + func (expr *ListComprehensionExpression) Evaluate(ctx *EvalContext) (Value, error) + func (expr ListComprehensionExpression) Tree() any + type ListLiteral struct + Const Value + Values []Expression + func (ListLiteral) Type() ValueType + func (expr *ListLiteral) Constraints(ctx *EvalContext) Constraint + func (expr *ListLiteral) Evaluate(ctx *EvalContext) (Value, error) + func (l ListLiteral) Tree() any + type LocalDateTime time.Time + func NewLocalDateTime(t time.Time) LocalDateTime + func (t LocalDateTime) String() string + func (t LocalDateTime) Time() time.Time + type LocalTime time.Time + func NewLocalTime(t time.Time) LocalTime + func (t LocalTime) String() string + func (t LocalTime) Time() time.Time + type MapLiteral struct + Const Value + Val map[string]Expression + func (MapLiteral) Type() ValueType + func (expr *MapLiteral) Constraints(ctx *EvalContext) Constraint + func (expr *MapLiteral) Evaluate(ctx *EvalContext) (Value, error) + func (l MapLiteral) Tree() any + type Match struct + Optional bool + Pattern Pattern + Where Expression + func OC_Match(ctx *parser.OC_MatchContext) (ret *Match, err error) + func (m Match) IsOptional() bool + func (m Match) Tree() any + func (match *Match) GetCursor(ctx *EvalContext) (Cursor, error) + type MergeAction struct + On MergeActionOn + Set UpdatingClause + type MergeActionOn int + const MergeActionOnCreate + const MergeActionOnMatch + func (m MergeActionOn) String() string + type MergeClause struct + Actions []MergeAction + Pattern PatternPart + func (m MergeClause) Tree() any + func (merge *MergeClause) Update(ctx *EvalContext, input Cursor) (Cursor, error) + type MultiplicativeOperator interface + type MultiplyDivideModuloExpression struct + Expr []Expression + Op []MultiplicativeOperator + ResultType ValueType + func (expr *MultiplyDivideModuloExpression) Constraints(ctx *EvalContext) Constraint + func (expr *MultiplyDivideModuloExpression) Evaluate(ctx *EvalContext) (Value, error) + func (expr MultiplyDivideModuloExpression) Tree() any + func (expr MultiplyDivideModuloExpression) Type() ValueType + type Node interface + GetProperties func() map[string]Value + GetProperty func(string) Value + HasIncomingEdges func() bool + HasLabel func(string) bool + HasOutgoingEdges func() bool + ID func() any + Labels func() []string + Native func() any + RemoveProperty func(string) + SetLabels func([]string) + SetProperties func(map[string]Value) + SetProperty func(string, Value) + type NodeCriteria struct + AtLeastOneLabel []string + MustHaveLabels []string + Name string + Node Node + Properties map[string]PropertyCriteria + type NodeLabelsConstraint struct + Labels []string + Var string + func (NodeLabelsConstraint) CanInvert() bool + func (NodeLabelsConstraint) Invert() Constraint + func (c NodeLabelsConstraint) BuildFilter(varName string) map[string]PropertyCriteria + type NodePattern struct + Labels []string + Properties *Properties + VariableName string + func OC_NodePattern(ctx *parser.OC_NodePatternContext) (ret NodePattern, err error) + func (node NodePattern) GetNodeCriteria(ctx *EvalContext) (NodeCriteria, error) + func (node NodePattern) Tree() any + type NontrivialConstraint struct + func (NontrivialConstraint) BuildFilter(varName string) map[string]PropertyCriteria + func (NontrivialConstraint) CanInvert() bool + func (NontrivialConstraint) Invert() Constraint + type NotExpression struct + Part Expression + func (NotExpression) Type() ValueType + func (expr *NotExpression) Constraints(ctx *EvalContext) Constraint + func (expr *NotExpression) Evaluate(ctx *EvalContext) (Value, error) + func (expr NotExpression) Tree() any + type NullCheckConstraint struct + IsNull bool + Var VarConstraint + func (NullCheckConstraint) CanInvert() bool + func (c NullCheckConstraint) BuildFilter(varName string) map[string]PropertyCriteria + func (c NullCheckConstraint) Invert() Constraint + type NullCheckExpression struct + CheckIsNull bool + Left Expression + func (NullCheckExpression) Type() ValueType + func (expr *NullCheckExpression) Constraints(ctx *EvalContext) Constraint + func (expr *NullCheckExpression) Evaluate(ctx *EvalContext) (Value, error) + func (expr NullCheckExpression) Tree() any + type OrExpression struct + Parts []Expression + func (OrExpression) Type() ValueType + func (expr *OrExpression) Constraints(ctx *EvalContext) Constraint + func (expr *OrExpression) Evaluate(ctx *EvalContext) (Value, error) + func (expr OrExpression) Tree() any + type Parameter struct + Name string + func (Parameter) Type() ValueType + func (expr *Parameter) Constraints(ctx *EvalContext) Constraint + func (expr *Parameter) Evaluate(ctx *EvalContext) (Value, error) + func (expr Parameter) Tree() any + type Path struct + Edges []Edge + Nodes []Node + func (path *Path) Equal(p *Path) bool + type PathCriteria struct + Edges []EdgeCriteria + Nodes []NodeCriteria + type PathPattern struct + Nodes []NodePattern + Rels []RelationshipPattern + func OC_RelationshipsPattern(ctx *parser.OC_RelationshipsPatternContext) (*PathPattern, error) + func (PathPattern) Type() ValueType + func (expr *PathPattern) Constraints(*EvalContext) Constraint + func (expr *PathPattern) Evaluate(*EvalContext) (Value, error) + func (p PathPattern) GetFreeVariables(ctx *EvalContext, offset int) []CursorColumn + func (p PathPattern) Tree() any + type Pattern struct + JoinParts []PatternPart + func OC_Pattern(ctx *parser.OC_PatternContext) (Pattern, error) + func (p Pattern) Tree() any + type PatternComprehension struct + Expr Expression + Rel *PathPattern + Variable string + Where Expression + func OC_PatternComprehension(ctx *parser.OC_PatternComprehensionContext) (*PatternComprehension, error) + func (*PatternComprehension) Constraints(*EvalContext) Constraint + func (*PatternComprehension) Evaluate(*EvalContext) (Value, error) + func (PatternComprehension) Type() ValueType + func (expr PatternComprehension) Tree() any + type PatternPart struct + Path PathPattern + VariableName string + func OC_PatternPart(ctx *parser.OC_PatternPartContext) (ret PatternPart, err error) + func (p PatternPart) Tree() any + type PowerOfExpression struct + Expr []Expression + func (expr *PowerOfExpression) Constraints(ctx *EvalContext) Constraint + func (expr *PowerOfExpression) Evaluate(ctx *EvalContext) (Value, error) + func (expr PowerOfExpression) Tree() any + func (expr PowerOfExpression) Type() ValueType + type Procedure struct + Cols []CursorColumn + MaxArgs int + MinArgs int + Name string + Proc func(*EvalContext, []Expression) (Cursor, error) + type ProcedureCall struct + Proc *ProcedureInvocation + Yield *YieldItems + func OC_InQueryCall(ctx *parser.OC_InQueryCallContext) (*ProcedureCall, error) + func OC_StandaloneCall(ctx *parser.OC_StandaloneCallContext) (*ProcedureCall, error) + func (ProcedureCall) IsOptional() bool + func (c ProcedureCall) Tree() any + func (call *ProcedureCall) GetCursor(ctx *EvalContext) (Cursor, error) + type ProcedureInvocation struct + Args []Expression + Name string + Namespace string + func OC_ExplicitProcedureInvocation(ctx *parser.OC_ExplicitProcedureInvocationContext) (*ProcedureInvocation, error) + func OC_ImplicitProcedureInvocation(ctx *parser.OC_ImplicitProcedureInvocationContext) (*ProcedureInvocation, error) + func (p ProcedureInvocation) Tree() any + type ProjectionBody struct + Distinct bool + Items []ProjectionItem + Limit Expression + Order []SortItem + Skip Expression + func OC_ProjectionBody(ctx *parser.OC_ProjectionBodyContext) (*ProjectionBody, error) + func (p ProjectionBody) Tree() any + func (prj *ProjectionBody) Project(ctx *EvalContext, rs Cursor) (Cursor, error) + type ProjectionItem struct + Alias string + All bool + Expr Expression + func OC_ProjectionItem(ctx *parser.OC_ProjectionItemContext) (item ProjectionItem, err error) + func OC_ProjectionItems(ctx *parser.OC_ProjectionItemsContext) ([]ProjectionItem, error) + func (p ProjectionItem) Tree() any + type Properties struct + Lit *MapLiteral + Param *Parameter + func OC_Properties(ctx *parser.OC_PropertiesContext) (Properties, error) + func (expr *Properties) Evaluate(ctx *EvalContext) (Value, error) + func (p Properties) Tree() any + type PropertyCriteria struct + OneOf []Value + PropertyName string + Ranges []PropertyValueRange + StringOp StringOperator + StringValue string + type PropertyExpression struct + Atom Expression + Property []string + func (PropertyExpression) Type() ValueType + func (expr *PropertyExpression) Constraints(ctx *EvalContext) Constraint + func (expr *PropertyExpression) Evaluate(ctx *EvalContext) (Value, error) + func (expr PropertyExpression) Tree() any + type PropertyOrLabelsExpression struct + Atom Expression + NodeLabels []string + Properties []string + func (expr *PropertyOrLabelsExpression) Constraints(ctx *EvalContext) Constraint + func (expr *PropertyOrLabelsExpression) Evaluate(ctx *EvalContext) (Value, error) + func (expr PropertyOrLabelsExpression) Tree() any + func (expr PropertyOrLabelsExpression) Type() ValueType + type PropertyValueRange struct + MaxExclusive Value + MaxInclusive Value + MinExclusive Value + MinInclusive Value + type Query interface + GetCursor func(*EvalContext) (Cursor, error) + Tree func() any + func OC_Cypher(ctx *parser.OC_CypherContext) (Query, error) + func OC_Query(ctx *parser.OC_QueryContext) (Query, error) + func OC_RegularQuery(ctx *parser.OC_RegularQueryContext) (Query, error) + func OC_Statement(ctx *parser.OC_StatementContext) (Query, error) + func Parse(input string) (Query, error) + type RValue struct + Constant bool + Typ ValueType + Value any + func (expr RValue) Constraints(ctx *EvalContext) Constraint + func (v RValue) Const() bool + func (v RValue) Evaluate(*EvalContext) (Value, error) + func (v RValue) Get() any + func (v RValue) Tree() any + func (v RValue) Type() ValueType + type RangeLiteral struct + From *int + To *int + func OC_RangeLiteral(ctx *parser.OC_RangeLiteralContext) (RangeLiteral, error) + func (r RangeLiteral) Tree() any + type ReadingClause interface + GetCursor func(*EvalContext) (Cursor, error) + IsOptional func() bool + Tree func() any + func OC_ReadingClause(ctx *parser.OC_ReadingClauseContext) (ReadingClause, error) + type RelationalConstraint struct + Op string + Value Value + Var VarConstraint + func (RelationalConstraint) CanInvert() bool + func (c RelationalConstraint) BuildFilter(varName string) map[string]PropertyCriteria + func (c RelationalConstraint) Invert() Constraint + type RelationshipPattern struct + Properties *Properties + Range *RangeLiteral + RelTypes []string + ToLeft bool + ToRight bool + VariableName string + func OC_RelationshipPattern(ctx *parser.OC_RelationshipPatternContext) (ret RelationshipPattern, err error) + func (rel RelationshipPattern) Tree() any + type RemoveClause struct + Items []RemoveItem + func (r RemoveClause) Tree() any + func (rm *RemoveClause) Update(ctx *EvalContext, input Cursor) (Cursor, error) + type RemoveItem struct + NodeLabels []string + Property *PropertyExpression + Variable *VariableAccessExpression + func OC_RemoveItem(ctx *parser.OC_RemoveItemContext) (RemoveItem, error) + func (r RemoveItem) DeleteLabel(l string) bool + func (r RemoveItem) Tree() any + type Return struct + Projection *ProjectionBody + func OC_Return(ctx *parser.OC_ReturnContext) (*Return, error) + func (r Return) Tree() any + type SetClause struct + Items []SetItem + func (s SetClause) Tree() any + func (set *SetClause) Update(ctx *EvalContext, input Cursor) (Cursor, error) + type SetItem struct + Expression Expression + NodeLabels []string + Op string + Property *PropertyExpression + Variable *VariableAccessExpression + func OC_SetItem(ctx *parser.OC_SetItemContext) (SetItem, error) + func (s SetItem) Tree() any + type SingleQuery struct + Ret *Return + Stages []SingleQueryStage + func OC_MultiPartQuery(ctx *parser.OC_MultiPartQueryContext) (*SingleQuery, error) + func OC_SinglePartQuery(ctx *parser.OC_SinglePartQueryContext) (*SingleQuery, error) + func OC_SingleQuery(ctx *parser.OC_SingleQueryContext) (ret *SingleQuery, err error) + func (*SingleQuery) IsOptional() bool + func (query *SingleQuery) GetCursor(ctx *EvalContext) (Cursor, error) + func (u SingleQuery) Tree() any + type SingleQueryStage struct + Read []ReadingClause + Update []UpdatingClause + With *With + type SortDirection int + const SortAscending + const SortDescending + func (s SortDirection) String() string + type SortItem struct + Dir SortDirection + Expr Expression + func OC_Order(ctx *parser.OC_OrderContext) ([]SortItem, error) + func OC_SortItem(ctx *parser.OC_SortItemContext) (ret SortItem, err error) + func (s SortItem) Tree() any + type StringConstraint struct + Op StringOperator + Value string + Var VarConstraint + func (StringConstraint) CanInvert() bool + func (StringConstraint) Invert() Constraint + func (c StringConstraint) BuildFilter(varName string) map[string]PropertyCriteria + type StringOperator int + const StringOperatorContains + const StringOperatorEndsWith + const StringOperatorStartsWith + func (s StringOperator) String() string + type StringOperatorExpression struct + Left Expression + Op StringOperator + Right Expression + func (StringOperatorExpression) Type() ValueType + func (expr *StringOperatorExpression) Constraints(ctx *EvalContext) Constraint + func (expr *StringOperatorExpression) Evaluate(ctx *EvalContext) (Value, error) + func (expr StringOperatorExpression) Tree() any + type SublistExpression struct + From Expression + Left Expression + To Expression + func (SublistExpression) Type() ValueType + func (expr *SublistExpression) Constraints(ctx *EvalContext) Constraint + func (expr *SublistExpression) Evaluate(ctx *EvalContext) (Value, error) + func (expr SublistExpression) Tree() any + type Time time.Time + func (t Time) String() string + func (t Time) Time() time.Time + type UnarySubtractExpression struct + Expr Expression + func (expr *UnarySubtractExpression) Constraints(ctx *EvalContext) Constraint + func (expr *UnarySubtractExpression) Evaluate(ctx *EvalContext) (Value, error) + func (expr UnarySubtractExpression) Tree() any + func (expr UnarySubtractExpression) Type() ValueType + type Union struct + Stages []UnionStage + func (query *Union) GetCursor(ctx *EvalContext) (Cursor, error) + func (u Union) Tree() any + type UnionStage struct + IncludeAll bool + Query *SingleQuery + type Unwind struct + As string + Expr Expression + func OC_Unwind(ctx *parser.OC_UnwindContext) (*Unwind, error) + func (Unwind) IsOptional() bool + func (u Unwind) Tree() any + func (unwind *Unwind) GetCursor(ctx *EvalContext) (Cursor, error) + type UpdatingClause interface + Tree func() any + Update func(ctx *EvalContext, input Cursor) (Cursor, error) + func OC_Create(ctx *parser.OC_CreateContext) (UpdatingClause, error) + func OC_Delete(ctx *parser.OC_DeleteContext) (UpdatingClause, error) + func OC_Merge(ctx *parser.OC_MergeContext) (UpdatingClause, error) + func OC_Remove(ctx *parser.OC_RemoveContext) (UpdatingClause, error) + func OC_Set(ctx *parser.OC_SetContext) (UpdatingClause, error) + func OC_UpdatingClause(ctx *parser.OC_UpdatingClauseContext) (UpdatingClause, error) + type Value interface + Const func() bool + Get func() any + func GetNamedColumn(rs Cursor, name string) Value + func ValueOf(in any) Value + type ValueConstraint struct + Value Value + func (ValueConstraint) CanInvert() bool + func (ValueConstraint) Invert() Constraint + func (c ValueConstraint) BuildFilter(varName string) map[string]PropertyCriteria + type ValueType int + const AnyType + const BoolType + const DateType + const DurationType + const EdgeType + const FloatType + const IntType + const ListType + const LocalDateTimeType + const LocalTimeType + const NodeType + const ObjectType + const PathType + const StringType + func (v ValueType) String() string + type VarConstraint struct + Name string + Properties []string + func (VarConstraint) CanInvert() bool + func (VarConstraint) Invert() Constraint + func (c VarConstraint) BuildFilter(varName string) map[string]PropertyCriteria + type VariableAccessExpression struct + Name string + func (VariableAccessExpression) Type() ValueType + func (expr *VariableAccessExpression) Constraints(ctx *EvalContext) Constraint + func (expr *VariableAccessExpression) Evaluate(ctx *EvalContext) (Value, error) + func (expr VariableAccessExpression) Tree() any + type With struct + Projection *ProjectionBody + Where Expression + func OC_With(ctx *parser.OC_WithContext) (*With, error) + func (w With) Tree() any + type XorExpression struct + Parts []Expression + func (XorExpression) Type() ValueType + func (expr *XorExpression) Constraints(ctx *EvalContext) Constraint + func (expr *XorExpression) Evaluate(ctx *EvalContext) (Value, error) + func (expr XorExpression) Tree() any + type YieldItem struct + AsVariable string + ResultField string + func OC_YieldItem(ctx *parser.OC_YieldItemContext) YieldItem + type YieldItems struct + All bool + Items []YieldItem + Where Expression + func OC_YieldItems(ctx *parser.OC_YieldItemsContext) (*YieldItems, error) + func (y YieldItems) Tree() any Other modules containing this package github.com/cloudprivacylabs/opencypher