http_rest_diff

package
v0.0.0-...-38ce1f1 Latest Latest
Warning

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

Go to latest
Published: Apr 8, 2024 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func IsSameData

func IsSameData(d1, d2 *pb.Data) bool

Determines whether diffing between two Data instances will produce an empty result.

Types

type DefaultSpecDiffVisitor

type DefaultSpecDiffVisitor interface {
	SpecDiffVisitor

	EnterDiff(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right interface{}) Cont
	LeaveDiff(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right interface{}, cont Cont) Cont

	// Delegates to EnterDiff by default.
	EnterAddedOrRemovedNode(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right interface{}) Cont

	// Delegates to EnterDiff by default.
	EnterChangedNode(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right interface{}) Cont

	// Delegates to LeaveDiff by default.
	LeaveAddedOrRemovedNode(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right interface{}, cont Cont) Cont

	// Delegates to LeaveDiff by default.
	LeaveChangedNode(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right interface{}, cont Cont) Cont
}

A SpecDiffVisitor with convenience functions for entering and leaving nodes with diffs.

type DefaultSpecDiffVisitorImpl

type DefaultSpecDiffVisitorImpl struct {
	http_rest.DefaultSpecPairVisitorImpl
}

A SpecDiffVisitor implementation. This does not traverse into the children of nodes that were added, removed, or changed.

func (*DefaultSpecDiffVisitorImpl) EnterAddedOrRemovedData

func (*DefaultSpecDiffVisitorImpl) EnterAddedOrRemovedData(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Data) Cont

Delegates to EnterAddedOrRemovedNode.

func (*DefaultSpecDiffVisitorImpl) EnterAddedOrRemovedList

func (*DefaultSpecDiffVisitorImpl) EnterAddedOrRemovedList(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.List) Cont

Delegates to EnterAddedOrRemovedNode.

func (*DefaultSpecDiffVisitorImpl) EnterAddedOrRemovedNode

func (*DefaultSpecDiffVisitorImpl) EnterAddedOrRemovedNode(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right interface{}) Cont

Delegates to EnterDiff.

func (*DefaultSpecDiffVisitorImpl) EnterAddedOrRemovedOneOf

func (*DefaultSpecDiffVisitorImpl) EnterAddedOrRemovedOneOf(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.OneOf) Cont

Delegates to EnterAddedOrRemovedNode.

func (*DefaultSpecDiffVisitorImpl) EnterAddedOrRemovedOptional

func (*DefaultSpecDiffVisitorImpl) EnterAddedOrRemovedOptional(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Optional) Cont

Delegates to EnterAddedOrRemovedNode.

func (*DefaultSpecDiffVisitorImpl) EnterAddedOrRemovedPrimitive

func (*DefaultSpecDiffVisitorImpl) EnterAddedOrRemovedPrimitive(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Primitive) Cont

Delegates to EnterAddedOrRemovedNode.

func (*DefaultSpecDiffVisitorImpl) EnterAddedOrRemovedStruct

func (*DefaultSpecDiffVisitorImpl) EnterAddedOrRemovedStruct(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Struct) Cont

Delegates to EnterAddedOrRemovedNode.

func (*DefaultSpecDiffVisitorImpl) EnterChangedNode

func (*DefaultSpecDiffVisitorImpl) EnterChangedNode(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right interface{}) Cont

Delegates to EnterDiff.

func (*DefaultSpecDiffVisitorImpl) EnterChangedOneOf

func (*DefaultSpecDiffVisitorImpl) EnterChangedOneOf(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.OneOf) Cont

Delegates to EnterChangedNode.

func (*DefaultSpecDiffVisitorImpl) EnterChangedPrimitive

func (*DefaultSpecDiffVisitorImpl) EnterChangedPrimitive(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Primitive) Cont

Delegates to EnterChangedNode.

func (*DefaultSpecDiffVisitorImpl) EnterData

func (*DefaultSpecDiffVisitorImpl) EnterData(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Data) Cont

func (*DefaultSpecDiffVisitorImpl) EnterDiff

func (*DefaultSpecDiffVisitorImpl) EnterDiff(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right interface{}) Cont

func (*DefaultSpecDiffVisitorImpl) EnterDifferentTypes

func (*DefaultSpecDiffVisitorImpl) EnterDifferentTypes(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right interface{}) Cont

Delegates to EnterDiff.

func (*DefaultSpecDiffVisitorImpl) EnterLists

func (*DefaultSpecDiffVisitorImpl) EnterLists(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.List) Cont

func (*DefaultSpecDiffVisitorImpl) EnterOneOfs

func (*DefaultSpecDiffVisitorImpl) EnterOneOfs(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.OneOf) Cont

func (*DefaultSpecDiffVisitorImpl) EnterOptionals

func (*DefaultSpecDiffVisitorImpl) EnterOptionals(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Optional) Cont

func (*DefaultSpecDiffVisitorImpl) EnterPrimitives

func (*DefaultSpecDiffVisitorImpl) EnterPrimitives(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Primitive) Cont

func (*DefaultSpecDiffVisitorImpl) EnterStructs

func (*DefaultSpecDiffVisitorImpl) EnterStructs(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Struct) Cont

func (*DefaultSpecDiffVisitorImpl) LeaveAddedOrRemovedData

func (*DefaultSpecDiffVisitorImpl) LeaveAddedOrRemovedData(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Data, cont Cont) Cont

Delegates to LeaveAddedOrRemovedNode.

func (*DefaultSpecDiffVisitorImpl) LeaveAddedOrRemovedList

func (*DefaultSpecDiffVisitorImpl) LeaveAddedOrRemovedList(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.List, cont Cont) Cont

Delegates to LeaveAddedOrRemovedNode.

func (*DefaultSpecDiffVisitorImpl) LeaveAddedOrRemovedNode

func (*DefaultSpecDiffVisitorImpl) LeaveAddedOrRemovedNode(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right interface{}, cont Cont) Cont

Delegates to LeaveDiff.

func (*DefaultSpecDiffVisitorImpl) LeaveAddedOrRemovedOneOf

func (*DefaultSpecDiffVisitorImpl) LeaveAddedOrRemovedOneOf(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.OneOf, cont Cont) Cont

Delegates to LeaveAddedOrRemovedNode.

func (*DefaultSpecDiffVisitorImpl) LeaveAddedOrRemovedOptional

func (*DefaultSpecDiffVisitorImpl) LeaveAddedOrRemovedOptional(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Optional, cont Cont) Cont

Delegates to LeaveAddedOrRemovedNode.

func (*DefaultSpecDiffVisitorImpl) LeaveAddedOrRemovedPrimitive

func (*DefaultSpecDiffVisitorImpl) LeaveAddedOrRemovedPrimitive(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Primitive, cont Cont) Cont

Delegates to LeaveAddedOrRemovedNode.

func (*DefaultSpecDiffVisitorImpl) LeaveAddedOrRemovedStruct

func (*DefaultSpecDiffVisitorImpl) LeaveAddedOrRemovedStruct(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Struct, cont Cont) Cont

Delegates to LeaveAddedOrRemovedNode.

func (*DefaultSpecDiffVisitorImpl) LeaveChangedNode

func (*DefaultSpecDiffVisitorImpl) LeaveChangedNode(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right interface{}, cont Cont) Cont

Delegates to LeaveDiff.

func (*DefaultSpecDiffVisitorImpl) LeaveChangedOneOf

func (*DefaultSpecDiffVisitorImpl) LeaveChangedOneOf(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.OneOf, cont Cont) Cont

Delegates to LeaveChangedNode.

func (*DefaultSpecDiffVisitorImpl) LeaveChangedPrimitive

func (*DefaultSpecDiffVisitorImpl) LeaveChangedPrimitive(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Primitive, cont Cont) Cont

Delegates to LeaveChangedNode.

func (*DefaultSpecDiffVisitorImpl) LeaveData

func (*DefaultSpecDiffVisitorImpl) LeaveData(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Data, cont Cont) Cont

func (*DefaultSpecDiffVisitorImpl) LeaveDiff

func (*DefaultSpecDiffVisitorImpl) LeaveDiff(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right interface{}, cont Cont) Cont

func (*DefaultSpecDiffVisitorImpl) LeaveDifferentTypes

func (*DefaultSpecDiffVisitorImpl) LeaveDifferentTypes(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right interface{}, cont Cont) Cont

Delegates to LeaveDiff.

func (*DefaultSpecDiffVisitorImpl) LeaveLists

func (*DefaultSpecDiffVisitorImpl) LeaveLists(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.List, cont Cont) Cont

func (*DefaultSpecDiffVisitorImpl) LeaveOneOfs

func (*DefaultSpecDiffVisitorImpl) LeaveOneOfs(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.OneOf, cont Cont) Cont

func (*DefaultSpecDiffVisitorImpl) LeaveOptionals

func (*DefaultSpecDiffVisitorImpl) LeaveOptionals(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Optional, cont Cont) Cont

func (*DefaultSpecDiffVisitorImpl) LeavePrimitives

func (*DefaultSpecDiffVisitorImpl) LeavePrimitives(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Primitive, cont Cont) Cont

func (*DefaultSpecDiffVisitorImpl) LeaveStructs

func (*DefaultSpecDiffVisitorImpl) LeaveStructs(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Struct, cont Cont) Cont

func (*DefaultSpecDiffVisitorImpl) VisitDataChildren

func (*DefaultSpecDiffVisitorImpl) VisitDataChildren(self interface{}, ctx http_rest.SpecPairVisitorContext, vm PairVisitorManager, left, right *pb.Data) Cont

func (*DefaultSpecDiffVisitorImpl) VisitOneOfChildren

func (*DefaultSpecDiffVisitorImpl) VisitOneOfChildren(self interface{}, ctx http_rest.SpecPairVisitorContext, vm PairVisitorManager, left, right *pb.OneOf) Cont

type SpecDiffVisitor

type SpecDiffVisitor interface {
	http_rest.SpecPairVisitor

	EnterAddedOrRemovedData(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Data) Cont
	LeaveAddedOrRemovedData(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Data, cont Cont) Cont

	EnterAddedOrRemovedList(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.List) Cont
	LeaveAddedOrRemovedList(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.List, cont Cont) Cont

	EnterAddedOrRemovedOneOf(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.OneOf) Cont
	EnterChangedOneOf(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.OneOf) Cont
	LeaveAddedOrRemovedOneOf(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.OneOf, cont Cont) Cont
	LeaveChangedOneOf(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.OneOf, cont Cont) Cont

	EnterAddedOrRemovedOptional(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Optional) Cont
	LeaveAddedOrRemovedOptional(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Optional, cont Cont) Cont

	EnterAddedOrRemovedPrimitive(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Primitive) Cont
	EnterChangedPrimitive(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Primitive) Cont
	LeaveAddedOrRemovedPrimitive(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Primitive, cont Cont) Cont
	LeaveChangedPrimitive(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Primitive, cont Cont) Cont

	EnterAddedOrRemovedStruct(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Struct) Cont
	LeaveAddedOrRemovedStruct(self interface{}, ctx http_rest.SpecPairVisitorContext, left, right *pb.Struct, cont Cont) Cont
}

A SpecPairVisitor with hooks for processing each difference found between two IR trees. A node is considered changed if a difference can be observed at that level of the IR. For example, HTTPAuth nodes with different Types are considered changed, but their parents might not necessarily be considered changed.

Go lacks virtual functions, so all functions here take the visitor itself as an argument, and call functions on that instance.

Jump to

Keyboard shortcuts

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