visitor

package
v0.0.0-...-33b3340 Latest Latest
Warning

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

Go to latest
Published: May 29, 2019 License: Unlicense Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func String

func String(in ast.Node) string

Types

type AVisitor

type AVisitor struct {
	Select *SelectStmt
}

func NewAVisitor

func NewAVisitor() AVisitor

func (*AVisitor) Enter

func (v *AVisitor) Enter(in ast.Node) (out ast.Node, skipChildren bool)

func (*AVisitor) Leave

func (v *AVisitor) Leave(in ast.Node) (out ast.Node, ok bool)

type ColumnExpr

type ColumnExpr struct {
	L  ColumnNode
	Op string
	R  ColumnNode
}

func (*ColumnExpr) String

func (ce *ColumnExpr) String() string

type ColumnNode

type ColumnNode struct {
	C      string
	Schema model.CIStr
	Table  model.CIStr
	Name   model.CIStr
}

func (*ColumnNode) String

func (c *ColumnNode) String() string

type FVisitor

type FVisitor struct {
}

func (*FVisitor) Enter

func (v *FVisitor) Enter(in ast.Node) (node ast.Node, skipChildren bool)

func (*FVisitor) Leave

func (v *FVisitor) Leave(in ast.Node) (node ast.Node, ok bool)

type SJoin

type SJoin struct {
	Type  string
	Nodes []ColumnExpr
}

func (*SJoin) String

func (j *SJoin) String() string

func (*SJoin) Text

func (j *SJoin) Text() string

type STable

type STable struct {
	//SelectNode
	Name   model.CIStr
	Alia   model.CIStr
	Schema model.CIStr
}

func (*STable) String

func (st *STable) String() string

type STmpTable

type STmpTable struct {
	Alia model.CIStr
	//SelectNode
	Stmt *SelectStmt
}

func (*STmpTable) String

func (stt *STmpTable) String() string

type SelectNode

type SelectNode interface {
	String() string
}

type SelectStmt

type SelectStmt struct {
	Nodes []SelectNode
}

func (*SelectStmt) Append

func (s *SelectStmt) Append(node SelectNode)

func (*SelectStmt) Columns

func (s *SelectStmt) Columns() string

func (*SelectStmt) String

func (s *SelectStmt) String() string

type Table

type Table struct {
	Name     model.CIStr
	Children map[string]Table
}

func (*Table) String

func (t *Table) String() string

type TableList

type TableList []*Table

func (TableList) Append

func (t TableList) Append(tbl Table) TableList

func (TableList) Len

func (t TableList) Len() int

func (TableList) Less

func (t TableList) Less(i, j int) bool

func (TableList) String

func (t TableList) String() string

func (TableList) Swap

func (t TableList) Swap(i, j int)

type TblNameVisitor2

type TblNameVisitor2 struct {
}

func (*TblNameVisitor2) Enter

func (v *TblNameVisitor2) Enter(in ast.Node) (out ast.Node, skipChildren bool)

func (*TblNameVisitor2) Leave

func (v *TblNameVisitor2) Leave(in ast.Node) (out ast.Node, ok bool)

Jump to

Keyboard shortcuts

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