Equality
Equality:
object
Defined in: Core/Equality.ts:14
Type Declaration
Section titled “Type Declaration”and: <
A>(eq2) => (eq1) =>Equality<A>
Combines two equalities with logical AND. Both must pass for two values to be considered equal. Data-last: the first equality is the data being piped.
Type Parameters
Section titled “Type Parameters”A
Parameters
Section titled “Parameters”Equality<A>
Returns
Section titled “Returns”(eq1) => Equality<A>
Example
Section titled “Example”array: <
A>(eq) =>Equality<readonlyA[]>
Lifts an element equality into an array equality. Two arrays are equal if they have the
same length and every element pair is equal under eq.
Type Parameters
Section titled “Type Parameters”A
Parameters
Section titled “Parameters”Equality<A>
Returns
Section titled “Returns”Equality<readonly A[]>
Example
Section titled “Example”boolean
Section titled “boolean”boolean:
Equality<boolean> =booleanEq
Equality for booleans.
Example
Section titled “Example”by: <
A,B>(f) => (eq) =>Equality<B>
Adapts an equality for type A into an equality for type B by extracting a field.
Read as “equality by this field”: pipe(Equality.string, Equality.by(u => u.name)).
Type Parameters
Section titled “Type Parameters”A
B
Parameters
Section titled “Parameters”(b) => A
Returns
Section titled “Returns”(eq) => Equality<B>
Example
Section titled “Example”date:
Equality<Date> =dateEq
Equality for Date values. Compares by numeric time value.
Example
Section titled “Example”number
Section titled “number”number:
Equality<number> =numberEq
Equality for numbers. Uses strict equality.
Example
Section titled “Example”string
Section titled “string”string:
Equality<string> =stringEq
Equality for strings. Case-sensitive.
Example
Section titled “Example”struct
Section titled “struct”struct: <
R>(fields) =>Equality<R>
Derives deep equality for a record from field-level Equality checkers.
Type Parameters
Section titled “Type Parameters”R extends Record<string, unknown>
Parameters
Section titled “Parameters”fields
Section titled “fields”{ [K in string | number | symbol]: Equality<R[K]> }
Returns
Section titled “Returns”Equality<R>
Example
Section titled “Example”tuple: <
T>(…equalities) =>Equality<T>
Derives element-wise equality for a tuple from positional Equality checkers.
Type Parameters
Section titled “Type Parameters”T extends readonly unknown[]
Parameters
Section titled “Parameters”equalities
Section titled “equalities”…{ [K in string | number | symbol]: Equality<T[K]> }
Returns
Section titled “Returns”Equality<T>