gonum: gonum.org/v1/gonum/graph/flow Index | Files

package flow

import "gonum.org/v1/gonum/graph/flow"

Package flow provides control flow analysis functions.

Index

Package Files

control_flow_lt.go control_flow_slt.go doc.go

type DominatorTree Uses

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

DominatorTree is a flow graph dominator tree.

func Dominators Uses

func Dominators(root graph.Node, g graph.Directed) DominatorTree

Dominators returns a dominator tree for all nodes in the flow graph g starting from the given root node.

func DominatorsSLT Uses

func DominatorsSLT(root graph.Node, g graph.Directed) DominatorTree

DominatorsSLT returns a dominator tree for all nodes in the flow graph g starting from the given root node using the sophisticated version of the Lengauer-Tarjan algorithm. The SLT algorithm may outperform the simple LT algorithm for very large dense graphs.

func (DominatorTree) DominatedBy Uses

func (d DominatorTree) DominatedBy(id int64) []graph.Node

DominatedBy returns a slice of all nodes immediately dominated by the node with the given ID. Elements of the slice are retained by the DominatorTree.

func (DominatorTree) DominatorOf Uses

func (d DominatorTree) DominatorOf(id int64) graph.Node

DominatorOf returns the immediate dominator of the node with the given ID.

func (DominatorTree) Root Uses

func (d DominatorTree) Root() graph.Node

Root returns the root of the tree.

Package flow imports 1 packages (graph). Updated 2019-06-11. Refresh now. Tools for package owners.