dagutils

package
v0.4.2 Latest Latest
Warning

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

Go to latest
Published: May 17, 2016 License: MIT Imports: 13 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Add = iota
	Remove
	Mod
)

Variables

This section is empty.

Functions

func ApplyChange added in v0.3.8

func ApplyChange(ctx context.Context, ds dag.DAGService, nd *dag.Node, cs []*Change) (*dag.Node, error)

func MergeDiffs added in v0.3.8

func MergeDiffs(a, b []*Change) ([]*Change, []Conflict)

func NewMemoryDagService added in v0.4.0

func NewMemoryDagService() dag.DAGService

Types

type Change added in v0.3.8

type Change struct {
	Type   int
	Path   string
	Before key.Key
	After  key.Key
}

func Diff added in v0.3.8

func Diff(ctx context.Context, ds dag.DAGService, a, b *dag.Node) ([]*Change, error)

func (*Change) String added in v0.3.8

func (c *Change) String() string

type Conflict added in v0.3.8

type Conflict struct {
	A *Change
	B *Change
}

type Editor

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

func NewDagEditor

func NewDagEditor(root *dag.Node, source dag.DAGService) *Editor

root is the node to be modified, source is the dagstore to pull nodes from (optional)

func (*Editor) Finalize added in v0.4.0

func (e *Editor) Finalize(ds dag.DAGService) (*dag.Node, error)

func (*Editor) GetDagService added in v0.3.8

func (e *Editor) GetDagService() dag.DAGService

func (*Editor) GetNode

func (e *Editor) GetNode() *dag.Node

func (*Editor) InsertNodeAtPath

func (e *Editor) InsertNodeAtPath(ctx context.Context, pth string, toinsert *dag.Node, create func() *dag.Node) error
func (e *Editor) RmLink(ctx context.Context, pth string) error

Jump to

Keyboard shortcuts

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