contramap<A> method

  1. @override
PartialOrder<A> contramap<A>(
  1. T map(
    1. A
    )
)
override

Return an Eq instance based on a parameter of type T extracted from a class A.

class Parent {
  final int value1;
  final double value2;
  const Parent(this.value1, this.value2);
}
/// Equality for values of type [Parent] based on their `value1` ([int]).
final eqParentInt = Eq.eqInt.contramap<Parent>(
  (p) => p.value1,
);
/// Equality for of type [Parent] based on their `value2` ([double]).
final eqParentDouble = Eq.eqDouble.contramap<Parent>(
  (p) => p.value2,
);

Implementation

@override
PartialOrder<A> contramap<A>(T Function(A) map) => PartialOrder.from<A>(
      (a1, a2) => partialCompare(map(a1), map(a2)),
    );