package operation
import "github.com/influxdata/flux/internal/operation"
Index ¶
Types ¶
type Edge ¶
Edge is a data flow relationship between a parent and a child
type Node ¶
type Node struct { ID NodeID `json:"id"` Spec flux.OperationSpec `json:"spec"` Source NodeSource `json:"source"` }
Node denotes a single operation in a query.
type NodeID ¶
type NodeID string
NodeID is a unique ID within a query for the operation.
type NodeSource ¶
type NodeSource struct { Stack []interpreter.StackEntry `json:"stack"` }
NodeSource specifies the source location that created an operation.
type Spec ¶
type Spec struct { Operations []*Node `json:"operations"` Edges []Edge `json:"edges"` Resources flux.ResourceManagement `json:"resources"` Now time.Time `json:"now"` // HasConflict is true if one of the operations in this spec // was previously used in another spec. This indicates // that two nodes from distinct specs relate to the same // operation. HasConflict bool // contains filtered or unexported fields }
Spec specifies a query.
func (*Spec) Children ¶
Children returns a list of children for a given operation. If the query is invalid no children will be returned.
func (*Spec) Functions ¶
Functions return the names of all functions used in the plan
func (*Spec) Parents ¶
Parents returns a list of parents for a given operation. If the query is invalid no parents will be returned.
func (*Spec) Validate ¶
Validate ensures the query is a valid DAG.
func (*Spec) Walk ¶
Walk calls f on each operation exactly once. The function f will be called on an operation only after all of its parents have already been passed to f.
Source Files ¶
- Version
- v0.196.1 (latest)
- Published
- Feb 19, 2025
- Platform
- linux/amd64
- Imports
- 5 packages
- Last checked
- 1 day ago –
Tools for package owners.