diff

package
v0.36.0 Latest Latest
Warning

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

Go to latest
Published: Sep 7, 2022 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DelimDiff

type DelimDiff struct {
	Term            TermDiff
	Sep             TermDiff
	Assoc           InterfaceDiff[parser.Associativity]
	CanStartWithSep InterfaceDiff[bool]
	CanEndWithSep   InterfaceDiff[bool]
}

func (DelimDiff) Equal

func (d DelimDiff) Equal() bool

type GrammarDiff

type GrammarDiff struct {
	OnlyInA []parser.Rule
	OnlyInB []parser.Rule
	Prods   map[parser.Rule]TermDiff
}

func Grammars added in v0.21.0

func Grammars(a, b parser.Grammar) GrammarDiff

func (GrammarDiff) Equal

func (d GrammarDiff) Equal() bool

type InterfaceDiff

type InterfaceDiff[T comparable] struct {
	A, B T
}

func (InterfaceDiff[T]) Equal

func (d InterfaceDiff[T]) Equal() bool

type NamedDiff

type NamedDiff struct {
	Name InterfaceDiff[string]
	Term TermDiff
}

func (NamedDiff) Equal

func (d NamedDiff) Equal() bool

type NodeDiff

type NodeDiff struct {
	A, B     *parser.Node
	Children map[int]NodeDiff
	Types    map[int][2]reflect.Type
}

func NewNodeDiff

func NewNodeDiff(a, b *parser.Node) NodeDiff

func (NodeDiff) Equal

func (d NodeDiff) Equal() bool

func (NodeDiff) String

func (d NodeDiff) String() string

type OneofDiff

type OneofDiff termsesDiff

func (OneofDiff) Equal

func (d OneofDiff) Equal() bool

type QuantDiff

type QuantDiff struct {
	Term TermDiff
	Min  InterfaceDiff[int]
	Max  InterfaceDiff[int]
}

func (QuantDiff) Equal

func (d QuantDiff) Equal() bool

type REDiff

type REDiff struct {
	A, B parser.RE
}

func (REDiff) Equal

func (d REDiff) Equal() bool

type RefDiff added in v0.14.0

type RefDiff struct {
	A, B parser.REF
}

func (RefDiff) Equal added in v0.14.0

func (d RefDiff) Equal() bool

type Report added in v0.21.0

type Report interface {
	Equal() bool
}

type RuleDiff

type RuleDiff struct {
	A, B parser.Rule
}

func (RuleDiff) Equal

func (d RuleDiff) Equal() bool

type SDiff

type SDiff struct {
	A, B parser.S
}

func (SDiff) Equal

func (d SDiff) Equal() bool

type ScopedGrammarDiff added in v0.13.0

type ScopedGrammarDiff struct {
	Term    TermDiff
	Grammar GrammarDiff
}

func (ScopedGrammarDiff) Equal added in v0.13.0

func (d ScopedGrammarDiff) Equal() bool

type SeqDiff

type SeqDiff termsesDiff

func (SeqDiff) Equal

func (d SeqDiff) Equal() bool

type TermDiff

type TermDiff interface {
	Report
}

func Terms added in v0.21.0

func Terms(a, b parser.Term) TermDiff

type TowerDiff

type TowerDiff termsesDiff

func (TowerDiff) Equal

func (d TowerDiff) Equal() bool

type TypesDiffer

type TypesDiffer[T comparable] struct {
	InterfaceDiff[T]
}

func (TypesDiffer[T]) Equal

func (d TypesDiffer[T]) Equal() bool

Jump to

Keyboard shortcuts

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