Closure(_ matcher: @escaping (Expression<T>, FailureMessage) throws -> Bool) -> Predicate {         return Predicate { actual in             let failureMessage = FailureMessage()             let result = try matcher(actual, failureMessage)             return PredicateResult(                 status: PredicateStatus(bool: result),                 message: failureMessage.toExpectationMessage()             )         }      }      /// Compatibility layer for old Matcher API, deprecated.     /// 