ast

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Mar 29, 2026 License: MIT Imports: 0 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Walk added in v0.2.0

func Walk(v Visitor, node Node) error

Types

type BinaryExpr added in v0.2.0

type BinaryExpr struct {
	Left     Expr
	Operator string
	Right    Expr
	Start    Pos
	EndPos   Pos
}

func (*BinaryExpr) End added in v0.2.0

func (e *BinaryExpr) End() Pos

func (*BinaryExpr) Position added in v0.2.0

func (e *BinaryExpr) Position() Pos

func (*BinaryExpr) String added in v0.2.0

func (e *BinaryExpr) String() string

type BoolLit added in v0.2.0

type BoolLit struct {
	Value  bool
	Start  Pos
	EndPos Pos
}

func (*BoolLit) End added in v0.2.0

func (e *BoolLit) End() Pos

func (*BoolLit) Position added in v0.2.0

func (e *BoolLit) Position() Pos

func (*BoolLit) String added in v0.2.0

func (e *BoolLit) String() string

type CaseExpr added in v0.2.0

type CaseExpr struct {
	Operand Expr
	Whens   []*WhenClause
	Else    Expr
	Start   Pos
	EndPos  Pos
}

func (*CaseExpr) End added in v0.2.0

func (e *CaseExpr) End() Pos

func (*CaseExpr) Position added in v0.2.0

func (e *CaseExpr) Position() Pos

func (*CaseExpr) String added in v0.2.0

func (e *CaseExpr) String() string

type Clause

type Clause interface {
	Node
	// contains filtered or unexported methods
}

type CreateClause

type CreateClause struct {
	Pattern *PatternExpr
	Start   Pos
	EndPos  Pos
}

func (*CreateClause) End added in v0.2.0

func (c *CreateClause) End() Pos

func (*CreateClause) Position added in v0.2.0

func (c *CreateClause) Position() Pos

func (*CreateClause) String added in v0.2.0

func (c *CreateClause) String() string

type CreateStmt added in v0.2.0

type CreateStmt struct {
	Pattern *PatternExpr
	Clauses []Clause
	Start   Pos
	EndPos  Pos
}

func (*CreateStmt) End added in v0.2.0

func (s *CreateStmt) End() Pos

func (*CreateStmt) Position added in v0.2.0

func (s *CreateStmt) Position() Pos

func (*CreateStmt) String added in v0.2.0

func (s *CreateStmt) String() string

type DeleteClause

type DeleteClause struct {
	Detach bool
	Items  []Expr
	Start  Pos
	EndPos Pos
}

func (*DeleteClause) End added in v0.2.0

func (c *DeleteClause) End() Pos

func (*DeleteClause) Position added in v0.2.0

func (c *DeleteClause) Position() Pos

func (*DeleteClause) String added in v0.2.0

func (c *DeleteClause) String() string

type DeleteStmt added in v0.2.0

type DeleteStmt struct {
	Detach bool
	Items  []Expr
	Start  Pos
	EndPos Pos
}

func (*DeleteStmt) End added in v0.2.0

func (s *DeleteStmt) End() Pos

func (*DeleteStmt) Position added in v0.2.0

func (s *DeleteStmt) Position() Pos

func (*DeleteStmt) String added in v0.2.0

func (s *DeleteStmt) String() string

type Direction added in v0.2.0

type Direction int
const (
	DirectionBoth Direction = iota
	DirectionOutgoing
	DirectionIncoming
)

type ExistsExpr added in v0.2.0

type ExistsExpr struct {
	Pattern *PatternExpr
	Expr    Expr
	Start   Pos
	EndPos  Pos
}

func (*ExistsExpr) End added in v0.2.0

func (e *ExistsExpr) End() Pos

func (*ExistsExpr) Position added in v0.2.0

func (e *ExistsExpr) Position() Pos

func (*ExistsExpr) String added in v0.2.0

func (e *ExistsExpr) String() string

type Expr added in v0.2.0

type Expr interface {
	Node
	// contains filtered or unexported methods
}

type FloatLit added in v0.2.0

type FloatLit struct {
	Value  float64
	Start  Pos
	EndPos Pos
}

func (*FloatLit) End added in v0.2.0

func (e *FloatLit) End() Pos

func (*FloatLit) Position added in v0.2.0

func (e *FloatLit) Position() Pos

func (*FloatLit) String added in v0.2.0

func (e *FloatLit) String() string

type FuncCall added in v0.2.0

type FuncCall struct {
	Name     string
	Args     []Expr
	Distinct bool
	Start    Pos
	EndPos   Pos
}

func (*FuncCall) End added in v0.2.0

func (e *FuncCall) End() Pos

func (*FuncCall) Position added in v0.2.0

func (e *FuncCall) Position() Pos

func (*FuncCall) String added in v0.2.0

func (e *FuncCall) String() string

type Ident added in v0.2.0

type Ident struct {
	Name   string
	Start  Pos
	EndPos Pos
}

func (*Ident) End added in v0.2.0

func (e *Ident) End() Pos

func (*Ident) Position added in v0.2.0

func (e *Ident) Position() Pos

func (*Ident) String added in v0.2.0

func (e *Ident) String() string

type InExpr added in v0.2.0

type InExpr struct {
	Left   Expr
	Right  Expr
	Start  Pos
	EndPos Pos
}

func (*InExpr) End added in v0.2.0

func (e *InExpr) End() Pos

func (*InExpr) Position added in v0.2.0

func (e *InExpr) Position() Pos

func (*InExpr) String added in v0.2.0

func (e *InExpr) String() string

type IntegerLit added in v0.2.0

type IntegerLit struct {
	Value  int64
	Start  Pos
	EndPos Pos
}

func (*IntegerLit) End added in v0.2.0

func (e *IntegerLit) End() Pos

func (*IntegerLit) Position added in v0.2.0

func (e *IntegerLit) Position() Pos

func (*IntegerLit) String added in v0.2.0

func (e *IntegerLit) String() string

type IsNullExpr added in v0.2.0

type IsNullExpr struct {
	Expr   Expr
	IsNot  bool
	Negate bool
	Start  Pos
	EndPos Pos
}

func (*IsNullExpr) End added in v0.2.0

func (e *IsNullExpr) End() Pos

func (*IsNullExpr) Position added in v0.2.0

func (e *IsNullExpr) Position() Pos

func (*IsNullExpr) String added in v0.2.0

func (e *IsNullExpr) String() string

type ListComprehension added in v0.2.0

type ListComprehension struct {
	Var        string
	Variable   string
	InExpr     Expr
	List       Expr
	Where      Expr
	Filter     Expr
	Expr       Expr
	Projection Expr
	Start      Pos
	EndPos     Pos
}

func (*ListComprehension) End added in v0.2.0

func (e *ListComprehension) End() Pos

func (*ListComprehension) Position added in v0.2.0

func (e *ListComprehension) Position() Pos

func (*ListComprehension) String added in v0.2.0

func (e *ListComprehension) String() string

type ListExpr added in v0.2.0

type ListExpr struct {
	Elements []Expr
	Start    Pos
	EndPos   Pos
}

func (*ListExpr) End added in v0.2.0

func (e *ListExpr) End() Pos

func (*ListExpr) Position added in v0.2.0

func (e *ListExpr) Position() Pos

func (*ListExpr) String added in v0.2.0

func (e *ListExpr) String() string

type ListIndexExpr added in v0.2.0

type ListIndexExpr struct {
	List   Expr
	Index  Expr
	Start  Pos
	EndPos Pos
}

func (*ListIndexExpr) End added in v0.2.0

func (e *ListIndexExpr) End() Pos

func (*ListIndexExpr) Position added in v0.2.0

func (e *ListIndexExpr) Position() Pos

func (*ListIndexExpr) String added in v0.2.0

func (e *ListIndexExpr) String() string

type ListLit added in v0.2.0

type ListLit struct {
	Elements []Expr
	Start    Pos
	EndPos   Pos
}

func (*ListLit) End added in v0.2.0

func (e *ListLit) End() Pos

func (*ListLit) Position added in v0.2.0

func (e *ListLit) Position() Pos

func (*ListLit) String added in v0.2.0

func (e *ListLit) String() string

type ListSliceExpr added in v0.2.0

type ListSliceExpr struct {
	List   Expr
	From   Expr
	To     Expr
	Start  Pos
	EndPos Pos
}

func (*ListSliceExpr) End added in v0.2.0

func (e *ListSliceExpr) End() Pos

func (*ListSliceExpr) Position added in v0.2.0

func (e *ListSliceExpr) Position() Pos

func (*ListSliceExpr) String added in v0.2.0

func (e *ListSliceExpr) String() string

type MapExpr added in v0.2.0

type MapExpr struct {
	Pairs  []*MapPair
	Start  Pos
	EndPos Pos
}

func (*MapExpr) End added in v0.2.0

func (e *MapExpr) End() Pos

func (*MapExpr) Position added in v0.2.0

func (e *MapExpr) Position() Pos

func (*MapExpr) String added in v0.2.0

func (e *MapExpr) String() string

type MapLit added in v0.2.0

type MapLit struct {
	Properties map[string]Expr
	Start      Pos
	EndPos     Pos
}

func (*MapLit) End added in v0.2.0

func (e *MapLit) End() Pos

func (*MapLit) Position added in v0.2.0

func (e *MapLit) Position() Pos

func (*MapLit) String added in v0.2.0

func (e *MapLit) String() string

type MapPair added in v0.2.0

type MapPair struct {
	Key    string
	Value  Expr
	Start  Pos
	EndPos Pos
}

func (*MapPair) End added in v0.2.0

func (p *MapPair) End() Pos

func (*MapPair) Position added in v0.2.0

func (p *MapPair) Position() Pos

func (*MapPair) String added in v0.2.0

func (p *MapPair) String() string

type MatchClause

type MatchClause struct {
	Optional bool
	Pattern  *PatternExpr
	Where    *WhereExpr
	Return   *ReturnExpr
	Delete   *DeleteClause
	Start    Pos
	EndPos   Pos
}

func (*MatchClause) End added in v0.2.0

func (c *MatchClause) End() Pos

func (*MatchClause) Position added in v0.2.0

func (c *MatchClause) Position() Pos

func (*MatchClause) String added in v0.2.0

func (c *MatchClause) String() string

type MatchStmt added in v0.2.0

type MatchStmt struct {
	Optional bool
	Clauses  []Clause
	Start    Pos
	EndPos   Pos
}

func (*MatchStmt) End added in v0.2.0

func (s *MatchStmt) End() Pos

func (*MatchStmt) Position added in v0.2.0

func (s *MatchStmt) Position() Pos

func (*MatchStmt) String added in v0.2.0

func (s *MatchStmt) String() string

type MergeClause added in v0.2.0

type MergeClause struct {
	Pattern  *PatternExpr
	OnCreate []*SetItem
	OnMatch  []*SetItem
	Start    Pos
	EndPos   Pos
}

func (*MergeClause) End added in v0.2.0

func (c *MergeClause) End() Pos

func (*MergeClause) Position added in v0.2.0

func (c *MergeClause) Position() Pos

func (*MergeClause) String added in v0.2.0

func (c *MergeClause) String() string

type MergeStmt added in v0.2.0

type MergeStmt struct {
	Pattern  *PatternExpr
	Clause   *MergeClause
	OnCreate []*SetItem
	OnMatch  []*SetItem
	Start    Pos
	EndPos   Pos
}

func (*MergeStmt) End added in v0.2.0

func (s *MergeStmt) End() Pos

func (*MergeStmt) Position added in v0.2.0

func (s *MergeStmt) Position() Pos

func (*MergeStmt) String added in v0.2.0

func (s *MergeStmt) String() string

type Node added in v0.2.0

type Node interface {
	Position() Pos
	End() Pos
	String() string
}

type NodePattern

type NodePattern struct {
	Variable     string
	Labels       []string
	Properties   map[string]Expr
	PropertyExpr Expr
	Start        Pos
	EndPos       Pos
}

func (*NodePattern) End added in v0.2.0

func (n *NodePattern) End() Pos

func (*NodePattern) Position added in v0.2.0

func (n *NodePattern) Position() Pos

func (*NodePattern) String added in v0.2.0

func (n *NodePattern) String() string

type NullLit added in v0.2.0

type NullLit struct {
	Start  Pos
	EndPos Pos
}

func (*NullLit) End added in v0.2.0

func (e *NullLit) End() Pos

func (*NullLit) Position added in v0.2.0

func (e *NullLit) Position() Pos

func (*NullLit) String added in v0.2.0

func (e *NullLit) String() string

type OrderByExpr added in v0.2.0

type OrderByExpr struct {
	Items  []*OrderByItem
	Start  Pos
	EndPos Pos
}

func (*OrderByExpr) End added in v0.2.0

func (c *OrderByExpr) End() Pos

func (*OrderByExpr) Position added in v0.2.0

func (c *OrderByExpr) Position() Pos

func (*OrderByExpr) String added in v0.2.0

func (c *OrderByExpr) String() string

type OrderByItem added in v0.2.0

type OrderByItem struct {
	Expr       Expr
	Descending bool
	Ascending  bool
	Start      Pos
	EndPos     Pos
}

func (*OrderByItem) End added in v0.2.0

func (c *OrderByItem) End() Pos

func (*OrderByItem) Position added in v0.2.0

func (c *OrderByItem) Position() Pos

func (*OrderByItem) String added in v0.2.0

func (c *OrderByItem) String() string

type Param added in v0.2.0

type Param struct {
	Name   string
	Start  Pos
	EndPos Pos
}

func (*Param) End added in v0.2.0

func (e *Param) End() Pos

func (*Param) Position added in v0.2.0

func (e *Param) Position() Pos

func (*Param) String added in v0.2.0

func (e *Param) String() string

type ParamExpr added in v0.2.0

type ParamExpr struct {
	Name   string
	Start  Pos
	EndPos Pos
}

func (*ParamExpr) End added in v0.2.0

func (e *ParamExpr) End() Pos

func (*ParamExpr) Position added in v0.2.0

func (e *ParamExpr) Position() Pos

func (*ParamExpr) String added in v0.2.0

func (e *ParamExpr) String() string

type PathExpr added in v0.2.0

type PathExpr struct {
	Nodes         []*NodePattern
	Relationships []*RelationPattern
	Start         Pos
	EndPos        Pos
}

func (*PathExpr) End added in v0.2.0

func (p *PathExpr) End() Pos

func (*PathExpr) Position added in v0.2.0

func (p *PathExpr) Position() Pos

func (*PathExpr) String added in v0.2.0

func (p *PathExpr) String() string

type Pattern

type Pattern interface {
	Node
	// contains filtered or unexported methods
}

type PatternComprehension added in v0.2.0

type PatternComprehension struct {
	Pattern *PatternExpr
	Where   Expr
	Expr    Expr
	Start   Pos
	EndPos  Pos
}

func (*PatternComprehension) End added in v0.2.0

func (p *PatternComprehension) End() Pos

func (*PatternComprehension) Position added in v0.2.0

func (p *PatternComprehension) Position() Pos

func (*PatternComprehension) String added in v0.2.0

func (p *PatternComprehension) String() string

type PatternExpr added in v0.2.0

type PatternExpr struct {
	Parts  []*PatternPart
	Paths  []*PathExpr
	Start  Pos
	EndPos Pos
}

func (*PatternExpr) End added in v0.2.0

func (p *PatternExpr) End() Pos

func (*PatternExpr) Position added in v0.2.0

func (p *PatternExpr) Position() Pos

func (*PatternExpr) String added in v0.2.0

func (p *PatternExpr) String() string

type PatternExprItem added in v0.2.0

type PatternExprItem struct {
	Variable string
	Path     *PathExpr
	Start    Pos
	EndPos   Pos
}

func (*PatternExprItem) End added in v0.2.0

func (p *PatternExprItem) End() Pos

func (*PatternExprItem) Position added in v0.2.0

func (p *PatternExprItem) Position() Pos

func (*PatternExprItem) String added in v0.2.0

func (p *PatternExprItem) String() string

type PatternPart added in v0.2.0

type PatternPart struct {
	Variable string
	Path     *PathExpr
	Start    Pos
	EndPos   Pos
}

func (*PatternPart) End added in v0.2.0

func (p *PatternPart) End() Pos

func (*PatternPart) Position added in v0.2.0

func (p *PatternPart) Position() Pos

func (*PatternPart) String added in v0.2.0

func (p *PatternPart) String() string

type Pos added in v0.2.0

type Pos struct {
	Line   int
	Column int
	Offset int
}

type PropertyAccessExpr added in v0.2.0

type PropertyAccessExpr struct {
	Target   Expr
	Property string
	Start    Pos
	EndPos   Pos
}

func (*PropertyAccessExpr) End added in v0.2.0

func (e *PropertyAccessExpr) End() Pos

func (*PropertyAccessExpr) Position added in v0.2.0

func (e *PropertyAccessExpr) Position() Pos

func (*PropertyAccessExpr) String added in v0.2.0

func (e *PropertyAccessExpr) String() string

type Query added in v0.2.0

type Query struct {
	Statements []Stmt
	Start      Pos
	EndPos     Pos
}

func (*Query) End added in v0.2.0

func (q *Query) End() Pos

func (*Query) Position added in v0.2.0

func (q *Query) Position() Pos

func (*Query) String added in v0.2.0

func (q *Query) String() string

type RelationPattern

type RelationPattern struct {
	Variable       string
	Types          []string
	Direction      Direction
	Properties     map[string]Expr
	MinHops        *int
	MaxHops        *int
	VariableLength bool
	RightArrow     bool
	LeftArrow      bool
	Start          Pos
	EndPos         Pos
}

func (*RelationPattern) End added in v0.2.0

func (r *RelationPattern) End() Pos

func (*RelationPattern) Position added in v0.2.0

func (r *RelationPattern) Position() Pos

func (*RelationPattern) String added in v0.2.0

func (r *RelationPattern) String() string

type RemoveClause

type RemoveClause struct {
	Items  []*RemoveItemExpr
	Start  Pos
	EndPos Pos
}

func (*RemoveClause) End added in v0.2.0

func (c *RemoveClause) End() Pos

func (*RemoveClause) Position added in v0.2.0

func (c *RemoveClause) Position() Pos

func (*RemoveClause) String added in v0.2.0

func (c *RemoveClause) String() string

type RemoveItemExpr added in v0.2.0

type RemoveItemExpr struct {
	Target  Expr
	IsLabel bool
	Label   string
	Start   Pos
	EndPos  Pos
}

func (*RemoveItemExpr) End added in v0.2.0

func (r *RemoveItemExpr) End() Pos

func (*RemoveItemExpr) Position added in v0.2.0

func (r *RemoveItemExpr) Position() Pos

func (*RemoveItemExpr) String added in v0.2.0

func (r *RemoveItemExpr) String() string

type RemoveStmt added in v0.2.0

type RemoveStmt struct {
	Items  []*RemoveItemExpr
	Start  Pos
	EndPos Pos
}

func (*RemoveStmt) End added in v0.2.0

func (s *RemoveStmt) End() Pos

func (*RemoveStmt) Position added in v0.2.0

func (s *RemoveStmt) Position() Pos

func (*RemoveStmt) String added in v0.2.0

func (s *RemoveStmt) String() string

type ReturnClause

type ReturnClause struct {
	Items    []*ReturnItemExpr
	Distinct bool
	OrderBy  *OrderByExpr
	Skip     Expr
	Limit    Expr
	Start    Pos
	EndPos   Pos
}

func (*ReturnClause) End added in v0.2.0

func (c *ReturnClause) End() Pos

func (*ReturnClause) Position added in v0.2.0

func (c *ReturnClause) Position() Pos

func (*ReturnClause) String added in v0.2.0

func (c *ReturnClause) String() string

type ReturnExpr added in v0.2.0

type ReturnExpr struct {
	Items    []*ReturnItemExpr
	Distinct bool
	OrderBy  *OrderByExpr
	Skip     Expr
	Limit    Expr
	Start    Pos
	EndPos   Pos
}

func (*ReturnExpr) End added in v0.2.0

func (c *ReturnExpr) End() Pos

func (*ReturnExpr) Position added in v0.2.0

func (c *ReturnExpr) Position() Pos

func (*ReturnExpr) String added in v0.2.0

func (c *ReturnExpr) String() string

type ReturnItemExpr added in v0.2.0

type ReturnItemExpr struct {
	Expr   Expr
	Alias  string
	Start  Pos
	EndPos Pos
}

func (*ReturnItemExpr) End added in v0.2.0

func (c *ReturnItemExpr) End() Pos

func (*ReturnItemExpr) Position added in v0.2.0

func (c *ReturnItemExpr) Position() Pos

func (*ReturnItemExpr) String added in v0.2.0

func (c *ReturnItemExpr) String() string

type ReturnStmt added in v0.2.0

type ReturnStmt struct {
	Distinct bool
	Items    []*ReturnItemExpr
	OrderBy  *OrderByExpr
	Skip     Expr
	Limit    Expr
	Return   *ReturnExpr
	Start    Pos
	EndPos   Pos
}

func (*ReturnStmt) End added in v0.2.0

func (s *ReturnStmt) End() Pos

func (*ReturnStmt) Position added in v0.2.0

func (s *ReturnStmt) Position() Pos

func (*ReturnStmt) String added in v0.2.0

func (s *ReturnStmt) String() string

type SetClause

type SetClause struct {
	Items  []*SetItem
	Start  Pos
	EndPos Pos
}

func (*SetClause) End added in v0.2.0

func (c *SetClause) End() Pos

func (*SetClause) Position added in v0.2.0

func (c *SetClause) Position() Pos

func (*SetClause) String added in v0.2.0

func (c *SetClause) String() string

type SetItem added in v0.2.0

type SetItem struct {
	Target   Expr
	Value    Expr
	Operator string
	IsLabel  bool
	Start    Pos
	EndPos   Pos
}

func (*SetItem) End added in v0.2.0

func (s *SetItem) End() Pos

func (*SetItem) Position added in v0.2.0

func (s *SetItem) Position() Pos

func (*SetItem) String added in v0.2.0

func (s *SetItem) String() string

type SetStmt added in v0.2.0

type SetStmt struct {
	Items  []*SetItem
	Start  Pos
	EndPos Pos
}

func (*SetStmt) End added in v0.2.0

func (s *SetStmt) End() Pos

func (*SetStmt) Position added in v0.2.0

func (s *SetStmt) Position() Pos

func (*SetStmt) String added in v0.2.0

func (s *SetStmt) String() string

type Stmt added in v0.2.0

type Stmt interface {
	Node
	// contains filtered or unexported methods
}

type StringLit added in v0.2.0

type StringLit struct {
	Value  string
	Start  Pos
	EndPos Pos
}

func (*StringLit) End added in v0.2.0

func (e *StringLit) End() Pos

func (*StringLit) Position added in v0.2.0

func (e *StringLit) Position() Pos

func (*StringLit) String added in v0.2.0

func (e *StringLit) String() string

type UnaryExpr added in v0.2.0

type UnaryExpr struct {
	Operator string
	Operand  Expr
	Start    Pos
	EndPos   Pos
}

func (*UnaryExpr) End added in v0.2.0

func (e *UnaryExpr) End() Pos

func (*UnaryExpr) Position added in v0.2.0

func (e *UnaryExpr) Position() Pos

func (*UnaryExpr) String added in v0.2.0

func (e *UnaryExpr) String() string

type UnionClause added in v0.2.0

type UnionClause struct {
	All    bool
	Start  Pos
	EndPos Pos
}

func (*UnionClause) End added in v0.2.0

func (c *UnionClause) End() Pos

func (*UnionClause) Position added in v0.2.0

func (c *UnionClause) Position() Pos

func (*UnionClause) String added in v0.2.0

func (c *UnionClause) String() string

type UnwindClause added in v0.2.0

type UnwindClause struct {
	Expr   Expr
	Var    string
	Start  Pos
	EndPos Pos
}

func (*UnwindClause) End added in v0.2.0

func (c *UnwindClause) End() Pos

func (*UnwindClause) Position added in v0.2.0

func (c *UnwindClause) Position() Pos

func (*UnwindClause) String added in v0.2.0

func (c *UnwindClause) String() string

type UnwindStmt added in v0.2.0

type UnwindStmt struct {
	List     Expr
	Variable string
	Return   *ReturnExpr
	Start    Pos
	EndPos   Pos
}

func (*UnwindStmt) End added in v0.2.0

func (s *UnwindStmt) End() Pos

func (*UnwindStmt) Position added in v0.2.0

func (s *UnwindStmt) Position() Pos

func (*UnwindStmt) String added in v0.2.0

func (s *UnwindStmt) String() string

type Visitor added in v0.2.0

type Visitor interface {
	Visit(node Node) (w Visitor, err error)
}

type Walker added in v0.2.0

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

func NewWalker added in v0.2.0

func NewWalker(v Visitor) *Walker

func (*Walker) Walk added in v0.2.0

func (w *Walker) Walk(node Node) error

type WhenClause added in v0.2.0

type WhenClause struct {
	Condition Expr
	Result    Expr
	Start     Pos
	EndPos    Pos
}

func (*WhenClause) End added in v0.2.0

func (c *WhenClause) End() Pos

func (*WhenClause) Position added in v0.2.0

func (c *WhenClause) Position() Pos

func (*WhenClause) String added in v0.2.0

func (c *WhenClause) String() string

type WhereClause

type WhereClause struct {
	Expr   Expr
	Start  Pos
	EndPos Pos
}

func (*WhereClause) End added in v0.2.0

func (c *WhereClause) End() Pos

func (*WhereClause) Position added in v0.2.0

func (c *WhereClause) Position() Pos

func (*WhereClause) String added in v0.2.0

func (c *WhereClause) String() string

type WhereExpr added in v0.2.0

type WhereExpr struct {
	Expr   Expr
	Start  Pos
	EndPos Pos
}

func (*WhereExpr) End added in v0.2.0

func (c *WhereExpr) End() Pos

func (*WhereExpr) Position added in v0.2.0

func (c *WhereExpr) Position() Pos

func (*WhereExpr) String added in v0.2.0

func (c *WhereExpr) String() string

type WithClause added in v0.2.0

type WithClause struct {
	Items    []*ReturnItemExpr
	Distinct bool
	OrderBy  *OrderByExpr
	Skip     Expr
	Limit    Expr
	Where    Expr
	Start    Pos
	EndPos   Pos
}

func (*WithClause) End added in v0.2.0

func (c *WithClause) End() Pos

func (*WithClause) Position added in v0.2.0

func (c *WithClause) Position() Pos

func (*WithClause) String added in v0.2.0

func (c *WithClause) String() string

type WithStmt added in v0.2.0

type WithStmt struct {
	Items    []*ReturnItemExpr
	Distinct bool
	OrderBy  *OrderByExpr
	Skip     Expr
	Limit    Expr
	Where    Expr
	Start    Pos
	EndPos   Pos
}

func (*WithStmt) End added in v0.2.0

func (s *WithStmt) End() Pos

func (*WithStmt) Position added in v0.2.0

func (s *WithStmt) Position() Pos

func (*WithStmt) String added in v0.2.0

func (s *WithStmt) String() string

Jump to

Keyboard shortcuts

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