db

package
v0.0.0-...-69869d7 Latest Latest
Warning

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

Go to latest
Published: Oct 2, 2017 License: Apache-2.0 Imports: 4 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

View Source
var CreateEdge = AddTreeEdge(addEdge)

CreateEdge ... EXAMPLE: CreateTreeEdge(myTreepointer, myFirstNode, mySecondNode)

View Source
var CreateNode = AddTreeNode(addNode)

CreateNode ... EXAMPLE: CreateNode(myTreepointer, myValue)

View Source
var ReadNodeValue = ReadTreeNode(readNode)

ReadValue ... EXAMPLE: ReadNodeValue(myTreepointer, myNodeID)

View Source
var RemoveEdge = DeleteTreeEntity(deleteEdge)

RemoveEdge ... EXAMPLE: RemoveEdge(myTreepointer, myEdgeID)

View Source
var RemoveNode = DeleteTreeEntity(deleteNode)

RemoveNode ... EXAMPLE: RemoveNode(myTreepointer, myNodeID)

View Source
var UpdateNodeValue = UpdateTreeNode(updateNode)

UpdateValue ... EXAMPLE: UpdateNodeValue(myTreepointer, myNodeID, myValue)

Functions

func NewTree

func NewTree() fabric.CDS

NewTree ...

func NewTreeEdge

func NewTreeEdge(c fabric.CDS, s, d fabric.Node) fabric.Edge

NewTreeEdge ...

func NewTreeNode

func NewTreeNode(c fabric.CDS, value interface{}) fabric.Node

NewTreeNode ...

Types

type AddTreeEdge

type AddTreeEdge func(*Tree, fabric.Node, fabric.Node) fabric.Edge

AddTreeEdge ...

func (AddTreeEdge) Commit

func (a AddTreeEdge) Commit(n fabric.DGNode) error

Commit ...

func (AddTreeEdge) ID

func (a AddTreeEdge) ID() int

ID ...

func (AddTreeEdge) Priority

func (a AddTreeEdge) Priority() int

Priority ...

func (AddTreeEdge) Rollback

Rollback ...

type AddTreeNode

type AddTreeNode func(*Tree, interface{}) fabric.Node

AddTreeNode ...

func (AddTreeNode) Commit

func (a AddTreeNode) Commit(n fabric.DGNode) error

Commit ...

func (AddTreeNode) ID

func (a AddTreeNode) ID() int

ID ...

func (AddTreeNode) Priority

func (a AddTreeNode) Priority() int

Priority ...

func (AddTreeNode) Rollback

Rollback ...

type DeleteTreeEntity

type DeleteTreeEntity func(*Tree, int)

DeleteTreeEntity ...

func (DeleteTreeEntity) Commit

func (d DeleteTreeEntity) Commit(n fabric.DGNode) error

Commit ...

func (DeleteTreeEntity) ID

func (d DeleteTreeEntity) ID() int

ID ...

func (DeleteTreeEntity) Priority

func (d DeleteTreeEntity) Priority() int

Priority ...

func (DeleteTreeEntity) Rollback

Rollback ...

type ReadTreeNode

type ReadTreeNode func(*Tree, int) interface{}

ReadTreeNode ...

func (ReadTreeNode) Commit

func (r ReadTreeNode) Commit(n fabric.DGNode) error

Commit ...

func (ReadTreeNode) ID

func (r ReadTreeNode) ID() int

ID ...

func (ReadTreeNode) Priority

func (r ReadTreeNode) Priority() int

Priority ...

func (ReadTreeNode) Rollback

Rollback ...

type Tree

type Tree struct {
	Root     fabric.Node
	Sections fabric.NodeList
	Nodes    fabric.NodeList
	Edges    fabric.EdgeList
}

Tree ...

func (*Tree) CreateEdge

func (t *Tree) CreateEdge(s fabric.Section, n1, n2 fabric.Node) (fabric.Edge, error)

CreateEdge ...

func (*Tree) CreateNode

func (t *Tree) CreateNode(s fabric.Section, value interface{}) (fabric.Node, error)

CreateNode will create a node and add it to the section and tree data store

func (Tree) GenEdgeID

func (t Tree) GenEdgeID() int

GenEdgeID ... Generate an ID for a CDS Edge

func (Tree) GenNodeID

func (t Tree) GenNodeID() int

GenNodeID ... Generate an ID for a CDS Node

func (Tree) ListEdges

func (t Tree) ListEdges() fabric.EdgeList

ListEdges ...

func (Tree) ListNodes

func (t Tree) ListNodes() fabric.NodeList

ListNodes ...

func (*Tree) NewSection

func (t *Tree) NewSection(id int) fabric.Node

NewSection takes a session id and creates a root node for a branch section that will be dedicated to that session (here session ids are behaving like user ids)

func (*Tree) ReadNodeValue

func (t *Tree) ReadNodeValue(s fabric.Section, id int) (interface{}, error)

ReadNodeValue ...

func (*Tree) RemoveEdge

func (t *Tree) RemoveEdge(s fabric.Section, id int) error

TODO: this function will iterate through the sections edge list twice, rewrite function so it does everything it needs to on a single iteration of the sections edgelist.

func (*Tree) RemoveNode

func (t *Tree) RemoveNode(s fabric.Section, id int) error

TODO: this function will iterate through the sections node list twice, rewrite function so it does everything it needs to on a single iteration of the sections nodelist.

func (*Tree) UpdateNodeValue

func (t *Tree) UpdateNodeValue(s fabric.Section, id int, value interface{}) error

UpdateNodeValue ...

type TreeEdge

type TreeEdge struct {
	Id          int
	Source      fabric.Node
	Destination fabric.Node
	Imm         bool
}

TreeEdge satisfies the fabric.Edge interface

func (*TreeEdge) GetDestination

func (t *TreeEdge) GetDestination() fabric.Node

GetDestination ...

func (*TreeEdge) GetSource

func (t *TreeEdge) GetSource() fabric.Node

GetSource ...

func (*TreeEdge) ID

func (t *TreeEdge) ID() int

ID ...

func (*TreeEdge) Immutable

func (t *TreeEdge) Immutable() bool

Immutable ...

type TreeNode

type TreeNode struct {
	Id    int
	Value interface{}
	Imm   bool
}

TreeNode satisfies fabric.Node interface

func (*TreeNode) ID

func (t *TreeNode) ID() int

ID ...

func (*TreeNode) Immutable

func (t *TreeNode) Immutable() bool

Immutable ...

type UpdateTreeNode

type UpdateTreeNode func(*Tree, int, interface{})

UpdateTreeNode ...

func (UpdateTreeNode) Commit

func (u UpdateTreeNode) Commit(n fabric.DGNode) error

Commit ...

func (UpdateTreeNode) ID

func (u UpdateTreeNode) ID() int

ID ...

func (UpdateTreeNode) Priority

func (u UpdateTreeNode) Priority() int

Priority ...

func (UpdateTreeNode) Rollback

Rollback ...

Jump to

Keyboard shortcuts

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