Fix bug when `Multiple` is passed an invalid value
If you are using Multiple to validate, and pass a value that is unsupported by the % operator, it will fail instead of creating a validation error. This fixes that bug.
Example of code the reproduces the bug:
Respect\Validation\Validator::intType()->multiple(10)->assert('Hello!');
// TypeError: Unsupported operand types: string % int
I'm submitting against the 2.3 branch instead of main because that's the version I'm using, and the version I tested this change against. It looks like the library has undergone significant refactoring since 2.3, so this probably can't be merged as-is to main.
This uses the same method that was already in use in the Even rule. Probably a better way of doing things would be some kind of "short circuit" where, since intType fails, multiple is never used. But, I don't want to throw anything drastic your way since it looks like you're in the middle of a big refactor.