Throws a GuardFailed error if predicate is true.
Purpose:
Predicate
Consumes an GuardFailed error and returns false, but otherwise rethrows.
Rethrows the error if it is not a GuardFailed error.
GuardFailed
false if error is a GuardFailed error.
false
Does nothing if the predicate is true. Otherwise throws GuardFailed error.
Throws a GuardFailed error if predicate is true.