comparer

package module
v1.1.2 Latest Latest
Warning

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

Go to latest
Published: Jan 23, 2023 License: MIT Imports: 3 Imported by: 0

README

comparer

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BuildAllowUnexported

func BuildAllowUnexported(i ...interface{}) cmp.Option

BuildAllowUnexported - рекурсивно формирует `cmp.AllowUnexported`

func BuildIgnoreUnexported

func BuildIgnoreUnexported(i ...interface{}) cmp.Option

BuildIgnoreUnexported - рекурсивно формирует `cmpopts.IgnoreUnexported`

func SlicesCompareOption

func SlicesCompareOption() cmp.Option

SlicesCompareOption - при сравнении `cmp` фильтрует пустые слайсы и делает тождественным nil (указатель на отсутствующий слайс) и пустой []SomeType{}

func SortSlicesOption

func SortSlicesOption(lessSlices LessSliсes) cmp.Option

SortSlicesOption опция сортировки массивов при сравнении

Types

type Comparer

type Comparer interface {
	WithIgnoreUnexportedOf(i ...interface{}) Comparer
	WithIgnoreEmptySlices() Comparer
	WithSortSlices(lessFunc LessSliсes) Comparer
	WithAllowUnexportedOf(i ...interface{}) Comparer
	WithIgnoreFields(typ interface{}, names ...string) Comparer
	WithCustomReporter(rep IReporter) Comparer
	ObjectsEqual(x, y interface{}) bool
	ObjectsDiff(x, y interface{}) string
}

Comparer - интерфейс сравнения объектов

func NewObjectsComparer

func NewObjectsComparer(opts ...cmp.Option) Comparer

NewObjectsComparer - конструктор интерфейса сравнения объектов

type IReporter

type IReporter interface {
	// CustomReport - возвращает отчёт
	CustomReport() string
	// PushStep - метод необходимый для `cmp.Reporter`
	PushStep(cmp.PathStep)
	// Report - метод необходимый для `cmp.Reporter`
	Report(cmp.Result)
	// PopStep - метод необходимый для `cmp.Reporter`
	PopStep()
}

IReporter - интерфейс репротера

type LessSliсes

type LessSliсes func(x, y interface{}) bool

LessSliсes функция сравнения срезов

Jump to

Keyboard shortcuts

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