final public static function memberByPredicate($predicate)
    {
        $member = static::memberByPredicateWithDefault($predicate);

        if (null === $member) {
            throw static::createUndefinedMemberException(
                get_called_class(),
                '<callback>',
                '<callback>'
            );
        }

        return $member;
    }