dag

package
v0.0.1-beta Latest Latest
Warning

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

Go to latest
Published: Aug 4, 2023 License: MIT Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DAG

type DAG struct {
	Nodes map[string]*internalNode
	// contains filtered or unexported fields
}

func NewDAG

func NewDAG(nodes []NamedNode, ops ...OperationFunc) (*DAG, error)

func (*DAG) GetSchedulableNodeNames

func (dag *DAG) GetSchedulableNodeNames(finishes ...string) ([]string, error)

func (*DAG) GetSchedulableNodes

func (dag *DAG) GetSchedulableNodes(finishes ...string) (map[string]Node, error)

type NamedNode

type NamedNode interface {
	NodeName() string
	PrevNodeNames() []string
}

type Node

type Node interface {
	NamedNode
	PrevNodes() []Node
	NextNodes() []Node
	NextNodeNames() []string
}

type OperationFunc

type OperationFunc func(dag *DAG)

func WithAllowMarkArbitraryNodeAsDone

func WithAllowMarkArbitraryNodeAsDone(allow bool) OperationFunc

func WithAllowNotCheckCycle

func WithAllowNotCheckCycle(allow bool) OperationFunc

Jump to

Keyboard shortcuts

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