title | nav_order | permalink |
---|---|---|
Eq.ts |
4 |
/eq/ |
Eq is a data type that determines if two values of the same type are equal, and abides the following laws:
- Reflexivity:
x === x
- Symmetry:
x === y <=> y === x
- Transitivity:
x === y && y === z => x === z
Added in v2.0.0
Signature
export declare const and: <A>(that: Eq<A>) => (self: Eq<A>) => Eq<A>
Added in v2.0.0
Signature
export declare const or: <A>(that: Eq<A>) => (self: Eq<A>) => Eq<A>
Added in v2.0.0
Signature
export declare const fromEquals: <A>(equals: (x: A, y: A) => boolean) => Eq<A>
Added in v2.0.0
Signature
export declare const contramap: <A, B>(f: (b: B) => A) => (fa: Eq<A>) => Eq<B>
Added in v2.0.0
Signature
export declare const imap: <A, B>(f: (a: A) => B, g: (b: B) => A) => (fa: Eq<A>) => Eq<B>
Added in v2.0.0
Signature
export declare const Contravariant: Contravariant1<'schemata-ts/Eq'>
Added in v2.0.0
Signature
export declare const Invariant: Invariant1<'schemata-ts/Eq'>
Added in v2.0.0
Signature
export declare const always: Eq<unknown>
Added in v2.0.0
Signature
export declare const eqStrict: Eq<unknown>
Added in v2.0.0
Interprets a schema as an Eq
instance.
Signature
export declare const deriveEq: Interpreter<I.SchemableLambda>
Added in v2.0.0
Represents a typeclass and data type that determines if two values of the same type are equal, and follows the following laws:
- Reflexivity:
x === x
- Symmetry:
x === y <=> y === x
- Transitivity:
x === y && y === z => x === z
Signature
export interface Eq<A> {
readonly equals: (x: A, y: A) => boolean
}
Added in v2.0.0
Signature
export declare const URI: 'schemata-ts/Eq'
Added in v2.0.0
Signature
export type URI = typeof URI
Added in v2.0.0