getEq<A> function

Eq<Option<A>> getEq<A>(
  1. Eq<A> eq
)

Returns an Eq for Option<A>, given an Eq<A>.

final intEq = Eq.fromEquals((int x, int y) => x == y);
final optionEq = getEq(intEq);

expect(optionEq.equals(Some(1), Some(1)), true);
expect(optionEq.equals(Some(1), Some(2)), false);
expect(optionEq.equals(Some(1), None()), false);
expect(optionEq.equals(None(), None()), true);

Implementation

Eq<Option<A>> getEq<A>(Eq<A> eq) {
  return OptionEq<A>(eq);
}