Help us shape the future of Go! Take the 2026 Go Developer Survey

parser

package
v0.7.3 Latest Latest
Warning

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

Go to latest
Published: Mar 21, 2019 License: Apache-2.0 Imports: 2 Imported by: 30

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Edge

type Edge struct {
	ParentID NodeID
	ChildID  NodeID
}

Edge identifies parent-child relation between transforms

func (Edge) String

func (e Edge) String() string

type Edges

type Edges []Edge

Edges is a slice of Edge

type Node

type Node struct {
	ID NodeID
	Op Params
}

Node represents an immutable node in the common DAG with a unique identifier. TODO: make this serializable

func NewTransformFromOperation

func NewTransformFromOperation(Op Params, nextID int) Node

NewTransformFromOperation creates a new transform

func (Node) String

func (t Node) String() string

type NodeID

type NodeID string

NodeID uniquely identifies all transforms in DAG

type Nodes

type Nodes []Node

Nodes is a slice of Node

type Params

type Params interface {
	fmt.Stringer
	OpType() string
}

Params is a function definition. It is immutable and contains no state

type Parser

type Parser interface {
	DAG() (Nodes, Edges, error)
	String() string
}

Parser consists of the language specific representation of AST and can convert into a common DAG

type Source

type Source interface {
	Execute(queryCtx *models.QueryContext) error
}

Source represents data sources which are handled differently than other transforms as they are always independent and can always be parallelized

Directories

Path Synopsis
Package m3ql is a generated GoMock package.
Package m3ql is a generated GoMock package.

Jump to

Keyboard shortcuts

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