graphfx

package
v0.0.0-...-7b96089 Latest Latest
Warning

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

Go to latest
Published: Jun 30, 2023 License: AGPL-3.0 Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DirectedGraph

type DirectedGraph[K comparable, N Node, E Edge] interface {
	ObservableGraph[K, N, E]

	graph.Directed
}

type Edge

type Edge = graph.Edge

type EdgeChangeEvent

type EdgeChangeEvent[K comparable, N Node, E Edge] struct {
	G            ObservableGraph[K, N, E]
	ValueAdded   E
	ValueRemoved E
	WasAdded     bool
	WasRemoved   bool
}

func (*EdgeChangeEvent[K, N, E]) Graph

func (n *EdgeChangeEvent[K, N, E]) Graph() ObservableGraph[K, N, E]

type GraphBase

type GraphBase[K comparable, N Node, E WeightedEdge] struct {
	// contains filtered or unexported fields
}

func (*GraphBase[K, N, E]) AddGraphListener

func (o *GraphBase[K, N, E]) AddGraphListener(listener GraphListener[K, N, E])

func (*GraphBase[K, N, E]) AddListener

func (o *GraphBase[K, N, E]) AddListener(listener obsfx.InvalidationListener)

func (*GraphBase[K, N, E]) FireListeners

func (o *GraphBase[K, N, E]) FireListeners(ev GraphChangeEvent[K, N, E])

func (*GraphBase[K, N, E]) RemoveGraphListener

func (o *GraphBase[K, N, E]) RemoveGraphListener(listener GraphListener[K, N, E])

func (*GraphBase[K, N, E]) RemoveListener

func (o *GraphBase[K, N, E]) RemoveListener(listener obsfx.InvalidationListener)

type GraphChangeEvent

type GraphChangeEvent[K comparable, N Node, E Edge] interface {
	Graph() ObservableGraph[K, N, E]
}

type GraphExpressionHelper

type GraphExpressionHelper[K comparable, N Node, E Edge] interface {
	GraphListener[K, N, E]

	AddListener(listener obsfx.InvalidationListener) GraphExpressionHelper[K, N, E]
	RemoveListener(listener obsfx.InvalidationListener) GraphExpressionHelper[K, N, E]
	AddGraphListener(listener GraphListener[K, N, E]) GraphExpressionHelper[K, N, E]
	RemoveGraphListener(listener GraphListener[K, N, E]) GraphExpressionHelper[K, N, E]
}

type GraphListener

type GraphListener[K comparable, N Node, E Edge] interface {
	OnGraphChanged(ev GraphChangeEvent[K, N, E])
}

type MutableDirectedGraph

type MutableDirectedGraph[K comparable, N Node, E Edge] interface {
	MutableGraph[K, N, E]
	DirectedGraph[K, N, E]

	graph.DirectedBuilder
}

type MutableGraph

type MutableGraph[K comparable, N Node, E Edge] interface {
	ObservableGraph[K, N, E]

	graph.Builder
}

type MutableUndirectedGraph

type MutableUndirectedGraph[K comparable, N Node, E Edge] interface {
	MutableGraph[K, N, E]
	UndirectedGraph[K, N, E]

	graph.UndirectedBuilder
}

type MutableWeightedDirectedGraph

type MutableWeightedDirectedGraph[K comparable, N Node, E WeightedEdge] interface {
	MutableDirectedGraph[K, N, E]
	WeightedDirectedGraph[K, N, E]

	graph.DirectedWeightedBuilder
}

type MutableWeightedGraph

type MutableWeightedGraph[K comparable, N Node, E WeightedEdge] interface {
	MutableGraph[K, N, E]
	WeightedGraph[K, N, E]

	graph.WeightedBuilder
}

type MutableWeightedUndirectedGraph

type MutableWeightedUndirectedGraph[K comparable, N Node, E WeightedEdge] interface {
	MutableUndirectedGraph[K, N, E]
	WeightedDirectedGraph[K, N, E]

	graph.UndirectedWeightedBuilder
}

type Node

type Node = graph.Node

type NodeChangeEvent

type NodeChangeEvent[K comparable, N Node, E Edge] struct {
	G            ObservableGraph[K, N, E]
	Key          K
	ValueAdded   N
	ValueRemoved N
	WasAdded     bool
	WasRemoved   bool
}

func (*NodeChangeEvent[K, N, E]) Graph

func (n *NodeChangeEvent[K, N, E]) Graph() ObservableGraph[K, N, E]

type ObservableGraph

type ObservableGraph[K comparable, N Node, E Edge] interface {
	graph.Graph
	obsfx.Observable

	AddGraphListener(listener GraphListener[K, N, E])
	RemoveGraphListener(listener GraphListener[K, N, E])
}

type UndirectedGraph

type UndirectedGraph[K comparable, N Node, E Edge] interface {
	ObservableGraph[K, N, E]

	graph.WeightedBuilder
}

type WeightedDirectedGraph

type WeightedDirectedGraph[K comparable, N Node, E WeightedEdge] interface {
	DirectedGraph[K, N, E]
	WeightedGraph[K, N, E]

	graph.WeightedDirected
}

type WeightedEdge

type WeightedEdge = graph.WeightedEdge

type WeightedGraph

type WeightedGraph[K comparable, N Node, E WeightedEdge] interface {
	ObservableGraph[K, N, E]

	graph.Weighted
}

type WeightedUndirectedGraph

type WeightedUndirectedGraph[K comparable, N Node, E WeightedEdge] interface {
	UndirectedGraph[K, N, E]
	WeightedGraph[K, N, E]

	graph.WeightedUndirected
}

Jump to

Keyboard shortcuts

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