* * Full license available in separate LICENSE file */ namespace Kadet\Functional\Predicates; use Kadet\Functional\Predicate; use function Kadet\Functional\predicate; /** * @param $expected * * @return \Kadet\Functional\Predicate */ function equals($expected): Predicate { return predicate(function ($value) use ($expected) { return $expected == $value; }); } /** * @param $expected * * @return \Kadet\Functional\Predicate */ function same($expected): Predicate { return predicate(function ($value) use ($expected) { return $value === $expected; }); } /** * @param $expected * * @return \Kadet\Functional\Predicate */ function gt($expected): Predicate { return predicate(function ($value) use ($expected) { return $value > $expected; }); } /** * @param $expected * * @return \Kadet\Functional\Predicate */ function ge($expected): Predicate { return predicate(function ($value) use ($expected) { return $value >= $expected; }); } /** * @param $expected * * @return \Kadet\Functional\Predicate */ function lt($expected): Predicate { return predicate(function ($value) use ($expected) { return $value < $expected; }); } /** * @param $expected * * @return \Kadet\Functional\Predicate */ function le($expected): Predicate { return predicate(function ($value) use ($expected) { return $value <= $expected; }); }