| 1: | <?php | 
| 2: | |
| 3: | /** | 
| 4: | * provides type inference and auto-completion for magic static methods of Assert. | 
| 5: | */ | 
| 6: | |
| 7: | namespace Webmozart\Assert; | 
| 8: | |
| 9: | use ArrayAccess; | 
| 10: | use Closure; | 
| 11: | use Countable; | 
| 12: | use InvalidArgumentException; | 
| 13: | use Throwable; | 
| 14: | |
| 15: | interface Mixin | 
| 16: | { | 
| 17: | /** | 
| 18: | * @psalm-pure | 
| 19: | * @psalm-assert null|string $value | 
| 20: | * | 
| 21: | * @param mixed $value | 
| 22: | * @param string $message | 
| 23: | * | 
| 24: | * @throws InvalidArgumentException | 
| 25: | */ | 
| 26: | public static function nullOrString($value, $message = ''); | 
| 27: | |
| 28: | /** | 
| 29: | * @psalm-pure | 
| 30: | * @psalm-assert iterable<string> $value | 
| 31: | * | 
| 32: | * @param mixed $value | 
| 33: | * @param string $message | 
| 34: | * | 
| 35: | * @throws InvalidArgumentException | 
| 36: | */ | 
| 37: | public static function allString($value, $message = ''); | 
| 38: | |
| 39: | /** | 
| 40: | * @psalm-pure | 
| 41: | * @psalm-assert null|non-empty-string $value | 
| 42: | * | 
| 43: | * @param mixed $value | 
| 44: | * @param string $message | 
| 45: | * | 
| 46: | * @throws InvalidArgumentException | 
| 47: | */ | 
| 48: | public static function nullOrStringNotEmpty($value, $message = ''); | 
| 49: | |
| 50: | /** | 
| 51: | * @psalm-pure | 
| 52: | * @psalm-assert iterable<non-empty-string> $value | 
| 53: | * | 
| 54: | * @param mixed $value | 
| 55: | * @param string $message | 
| 56: | * | 
| 57: | * @throws InvalidArgumentException | 
| 58: | */ | 
| 59: | public static function allStringNotEmpty($value, $message = ''); | 
| 60: | |
| 61: | /** | 
| 62: | * @psalm-pure | 
| 63: | * @psalm-assert null|int $value | 
| 64: | * | 
| 65: | * @param mixed $value | 
| 66: | * @param string $message | 
| 67: | * | 
| 68: | * @throws InvalidArgumentException | 
| 69: | */ | 
| 70: | public static function nullOrInteger($value, $message = ''); | 
| 71: | |
| 72: | /** | 
| 73: | * @psalm-pure | 
| 74: | * @psalm-assert iterable<int> $value | 
| 75: | * | 
| 76: | * @param mixed $value | 
| 77: | * @param string $message | 
| 78: | * | 
| 79: | * @throws InvalidArgumentException | 
| 80: | */ | 
| 81: | public static function allInteger($value, $message = ''); | 
| 82: | |
| 83: | /** | 
| 84: | * @psalm-pure | 
| 85: | * @psalm-assert null|numeric $value | 
| 86: | * | 
| 87: | * @param mixed $value | 
| 88: | * @param string $message | 
| 89: | * | 
| 90: | * @throws InvalidArgumentException | 
| 91: | */ | 
| 92: | public static function nullOrIntegerish($value, $message = ''); | 
| 93: | |
| 94: | /** | 
| 95: | * @psalm-pure | 
| 96: | * @psalm-assert iterable<numeric> $value | 
| 97: | * | 
| 98: | * @param mixed $value | 
| 99: | * @param string $message | 
| 100: | * | 
| 101: | * @throws InvalidArgumentException | 
| 102: | */ | 
| 103: | public static function allIntegerish($value, $message = ''); | 
| 104: | |
| 105: | /** | 
| 106: | * @psalm-pure | 
| 107: | * @psalm-assert null|float $value | 
| 108: | * | 
| 109: | * @param mixed $value | 
| 110: | * @param string $message | 
| 111: | * | 
| 112: | * @throws InvalidArgumentException | 
| 113: | */ | 
| 114: | public static function nullOrFloat($value, $message = ''); | 
| 115: | |
| 116: | /** | 
| 117: | * @psalm-pure | 
| 118: | * @psalm-assert iterable<float> $value | 
| 119: | * | 
| 120: | * @param mixed $value | 
| 121: | * @param string $message | 
| 122: | * | 
| 123: | * @throws InvalidArgumentException | 
| 124: | */ | 
| 125: | public static function allFloat($value, $message = ''); | 
| 126: | |
| 127: | /** | 
| 128: | * @psalm-pure | 
| 129: | * @psalm-assert null|numeric $value | 
| 130: | * | 
| 131: | * @param mixed $value | 
| 132: | * @param string $message | 
| 133: | * | 
| 134: | * @throws InvalidArgumentException | 
| 135: | */ | 
| 136: | public static function nullOrNumeric($value, $message = ''); | 
| 137: | |
| 138: | /** | 
| 139: | * @psalm-pure | 
| 140: | * @psalm-assert iterable<numeric> $value | 
| 141: | * | 
| 142: | * @param mixed $value | 
| 143: | * @param string $message | 
| 144: | * | 
| 145: | * @throws InvalidArgumentException | 
| 146: | */ | 
| 147: | public static function allNumeric($value, $message = ''); | 
| 148: | |
| 149: | /** | 
| 150: | * @psalm-pure | 
| 151: | * @psalm-assert null|int $value | 
| 152: | * | 
| 153: | * @param mixed $value | 
| 154: | * @param string $message | 
| 155: | * | 
| 156: | * @throws InvalidArgumentException | 
| 157: | */ | 
| 158: | public static function nullOrNatural($value, $message = ''); | 
| 159: | |
| 160: | /** | 
| 161: | * @psalm-pure | 
| 162: | * @psalm-assert iterable<int> $value | 
| 163: | * | 
| 164: | * @param mixed $value | 
| 165: | * @param string $message | 
| 166: | * | 
| 167: | * @throws InvalidArgumentException | 
| 168: | */ | 
| 169: | public static function allNatural($value, $message = ''); | 
| 170: | |
| 171: | /** | 
| 172: | * @psalm-pure | 
| 173: | * @psalm-assert null|bool $value | 
| 174: | * | 
| 175: | * @param mixed $value | 
| 176: | * @param string $message | 
| 177: | * | 
| 178: | * @throws InvalidArgumentException | 
| 179: | */ | 
| 180: | public static function nullOrBoolean($value, $message = ''); | 
| 181: | |
| 182: | /** | 
| 183: | * @psalm-pure | 
| 184: | * @psalm-assert iterable<bool> $value | 
| 185: | * | 
| 186: | * @param mixed $value | 
| 187: | * @param string $message | 
| 188: | * | 
| 189: | * @throws InvalidArgumentException | 
| 190: | */ | 
| 191: | public static function allBoolean($value, $message = ''); | 
| 192: | |
| 193: | /** | 
| 194: | * @psalm-pure | 
| 195: | * @psalm-assert null|scalar $value | 
| 196: | * | 
| 197: | * @param mixed $value | 
| 198: | * @param string $message | 
| 199: | * | 
| 200: | * @throws InvalidArgumentException | 
| 201: | */ | 
| 202: | public static function nullOrScalar($value, $message = ''); | 
| 203: | |
| 204: | /** | 
| 205: | * @psalm-pure | 
| 206: | * @psalm-assert iterable<scalar> $value | 
| 207: | * | 
| 208: | * @param mixed $value | 
| 209: | * @param string $message | 
| 210: | * | 
| 211: | * @throws InvalidArgumentException | 
| 212: | */ | 
| 213: | public static function allScalar($value, $message = ''); | 
| 214: | |
| 215: | /** | 
| 216: | * @psalm-pure | 
| 217: | * @psalm-assert null|object $value | 
| 218: | * | 
| 219: | * @param mixed $value | 
| 220: | * @param string $message | 
| 221: | * | 
| 222: | * @throws InvalidArgumentException | 
| 223: | */ | 
| 224: | public static function nullOrObject($value, $message = ''); | 
| 225: | |
| 226: | /** | 
| 227: | * @psalm-pure | 
| 228: | * @psalm-assert iterable<object> $value | 
| 229: | * | 
| 230: | * @param mixed $value | 
| 231: | * @param string $message | 
| 232: | * | 
| 233: | * @throws InvalidArgumentException | 
| 234: | */ | 
| 235: | public static function allObject($value, $message = ''); | 
| 236: | |
| 237: | /** | 
| 238: | * @psalm-pure | 
| 239: | * @psalm-assert null|resource $value | 
| 240: | * | 
| 241: | * @param mixed $value | 
| 242: | * @param string|null $type type of resource this should be. @see https://www.php.net/manual/en/function.get-resource-type.php | 
| 243: | * @param string $message | 
| 244: | * | 
| 245: | * @throws InvalidArgumentException | 
| 246: | */ | 
| 247: | public static function nullOrResource($value, $type = null, $message = ''); | 
| 248: | |
| 249: | /** | 
| 250: | * @psalm-pure | 
| 251: | * @psalm-assert iterable<resource> $value | 
| 252: | * | 
| 253: | * @param mixed $value | 
| 254: | * @param string|null $type type of resource this should be. @see https://www.php.net/manual/en/function.get-resource-type.php | 
| 255: | * @param string $message | 
| 256: | * | 
| 257: | * @throws InvalidArgumentException | 
| 258: | */ | 
| 259: | public static function allResource($value, $type = null, $message = ''); | 
| 260: | |
| 261: | /** | 
| 262: | * @psalm-pure | 
| 263: | * @psalm-assert null|callable $value | 
| 264: | * | 
| 265: | * @param mixed $value | 
| 266: | * @param string $message | 
| 267: | * | 
| 268: | * @throws InvalidArgumentException | 
| 269: | */ | 
| 270: | public static function nullOrIsCallable($value, $message = ''); | 
| 271: | |
| 272: | /** | 
| 273: | * @psalm-pure | 
| 274: | * @psalm-assert iterable<callable> $value | 
| 275: | * | 
| 276: | * @param mixed $value | 
| 277: | * @param string $message | 
| 278: | * | 
| 279: | * @throws InvalidArgumentException | 
| 280: | */ | 
| 281: | public static function allIsCallable($value, $message = ''); | 
| 282: | |
| 283: | /** | 
| 284: | * @psalm-pure | 
| 285: | * @psalm-assert null|array $value | 
| 286: | * | 
| 287: | * @param mixed $value | 
| 288: | * @param string $message | 
| 289: | * | 
| 290: | * @throws InvalidArgumentException | 
| 291: | */ | 
| 292: | public static function nullOrIsArray($value, $message = ''); | 
| 293: | |
| 294: | /** | 
| 295: | * @psalm-pure | 
| 296: | * @psalm-assert iterable<array> $value | 
| 297: | * | 
| 298: | * @param mixed $value | 
| 299: | * @param string $message | 
| 300: | * | 
| 301: | * @throws InvalidArgumentException | 
| 302: | */ | 
| 303: | public static function allIsArray($value, $message = ''); | 
| 304: | |
| 305: | /** | 
| 306: | * @psalm-pure | 
| 307: | * @psalm-assert null|iterable $value | 
| 308: | * | 
| 309: | * @deprecated use "isIterable" or "isInstanceOf" instead | 
| 310: | * | 
| 311: | * @param mixed $value | 
| 312: | * @param string $message | 
| 313: | * | 
| 314: | * @throws InvalidArgumentException | 
| 315: | */ | 
| 316: | public static function nullOrIsTraversable($value, $message = ''); | 
| 317: | |
| 318: | /** | 
| 319: | * @psalm-pure | 
| 320: | * @psalm-assert iterable<iterable> $value | 
| 321: | * | 
| 322: | * @deprecated use "isIterable" or "isInstanceOf" instead | 
| 323: | * | 
| 324: | * @param mixed $value | 
| 325: | * @param string $message | 
| 326: | * | 
| 327: | * @throws InvalidArgumentException | 
| 328: | */ | 
| 329: | public static function allIsTraversable($value, $message = ''); | 
| 330: | |
| 331: | /** | 
| 332: | * @psalm-pure | 
| 333: | * @psalm-assert null|array|ArrayAccess $value | 
| 334: | * | 
| 335: | * @param mixed $value | 
| 336: | * @param string $message | 
| 337: | * | 
| 338: | * @throws InvalidArgumentException | 
| 339: | */ | 
| 340: | public static function nullOrIsArrayAccessible($value, $message = ''); | 
| 341: | |
| 342: | /** | 
| 343: | * @psalm-pure | 
| 344: | * @psalm-assert iterable<array|ArrayAccess> $value | 
| 345: | * | 
| 346: | * @param mixed $value | 
| 347: | * @param string $message | 
| 348: | * | 
| 349: | * @throws InvalidArgumentException | 
| 350: | */ | 
| 351: | public static function allIsArrayAccessible($value, $message = ''); | 
| 352: | |
| 353: | /** | 
| 354: | * @psalm-pure | 
| 355: | * @psalm-assert null|countable $value | 
| 356: | * | 
| 357: | * @param mixed $value | 
| 358: | * @param string $message | 
| 359: | * | 
| 360: | * @throws InvalidArgumentException | 
| 361: | */ | 
| 362: | public static function nullOrIsCountable($value, $message = ''); | 
| 363: | |
| 364: | /** | 
| 365: | * @psalm-pure | 
| 366: | * @psalm-assert iterable<countable> $value | 
| 367: | * | 
| 368: | * @param mixed $value | 
| 369: | * @param string $message | 
| 370: | * | 
| 371: | * @throws InvalidArgumentException | 
| 372: | */ | 
| 373: | public static function allIsCountable($value, $message = ''); | 
| 374: | |
| 375: | /** | 
| 376: | * @psalm-pure | 
| 377: | * @psalm-assert null|iterable $value | 
| 378: | * | 
| 379: | * @param mixed $value | 
| 380: | * @param string $message | 
| 381: | * | 
| 382: | * @throws InvalidArgumentException | 
| 383: | */ | 
| 384: | public static function nullOrIsIterable($value, $message = ''); | 
| 385: | |
| 386: | /** | 
| 387: | * @psalm-pure | 
| 388: | * @psalm-assert iterable<iterable> $value | 
| 389: | * | 
| 390: | * @param mixed $value | 
| 391: | * @param string $message | 
| 392: | * | 
| 393: | * @throws InvalidArgumentException | 
| 394: | */ | 
| 395: | public static function allIsIterable($value, $message = ''); | 
| 396: | |
| 397: | /** | 
| 398: | * @psalm-pure | 
| 399: | * @psalm-template ExpectedType of object | 
| 400: | * @psalm-param class-string<ExpectedType> $class | 
| 401: | * @psalm-assert null|ExpectedType $value | 
| 402: | * | 
| 403: | * @param mixed $value | 
| 404: | * @param string|object $class | 
| 405: | * @param string $message | 
| 406: | * | 
| 407: | * @throws InvalidArgumentException | 
| 408: | */ | 
| 409: | public static function nullOrIsInstanceOf($value, $class, $message = ''); | 
| 410: | |
| 411: | /** | 
| 412: | * @psalm-pure | 
| 413: | * @psalm-template ExpectedType of object | 
| 414: | * @psalm-param class-string<ExpectedType> $class | 
| 415: | * @psalm-assert iterable<ExpectedType> $value | 
| 416: | * | 
| 417: | * @param mixed $value | 
| 418: | * @param string|object $class | 
| 419: | * @param string $message | 
| 420: | * | 
| 421: | * @throws InvalidArgumentException | 
| 422: | */ | 
| 423: | public static function allIsInstanceOf($value, $class, $message = ''); | 
| 424: | |
| 425: | /** | 
| 426: | * @psalm-pure | 
| 427: | * @psalm-template ExpectedType of object | 
| 428: | * @psalm-param class-string<ExpectedType> $class | 
| 429: | * | 
| 430: | * @param mixed $value | 
| 431: | * @param string|object $class | 
| 432: | * @param string $message | 
| 433: | * | 
| 434: | * @throws InvalidArgumentException | 
| 435: | */ | 
| 436: | public static function nullOrNotInstanceOf($value, $class, $message = ''); | 
| 437: | |
| 438: | /** | 
| 439: | * @psalm-pure | 
| 440: | * @psalm-template ExpectedType of object | 
| 441: | * @psalm-param class-string<ExpectedType> $class | 
| 442: | * | 
| 443: | * @param mixed $value | 
| 444: | * @param string|object $class | 
| 445: | * @param string $message | 
| 446: | * | 
| 447: | * @throws InvalidArgumentException | 
| 448: | */ | 
| 449: | public static function allNotInstanceOf($value, $class, $message = ''); | 
| 450: | |
| 451: | /** | 
| 452: | * @psalm-pure | 
| 453: | * @psalm-param array<class-string> $classes | 
| 454: | * | 
| 455: | * @param mixed $value | 
| 456: | * @param array<object|string> $classes | 
| 457: | * @param string $message | 
| 458: | * | 
| 459: | * @throws InvalidArgumentException | 
| 460: | */ | 
| 461: | public static function nullOrIsInstanceOfAny($value, $classes, $message = ''); | 
| 462: | |
| 463: | /** | 
| 464: | * @psalm-pure | 
| 465: | * @psalm-param array<class-string> $classes | 
| 466: | * | 
| 467: | * @param mixed $value | 
| 468: | * @param array<object|string> $classes | 
| 469: | * @param string $message | 
| 470: | * | 
| 471: | * @throws InvalidArgumentException | 
| 472: | */ | 
| 473: | public static function allIsInstanceOfAny($value, $classes, $message = ''); | 
| 474: | |
| 475: | /** | 
| 476: | * @psalm-pure | 
| 477: | * @psalm-template ExpectedType of object | 
| 478: | * @psalm-param class-string<ExpectedType> $class | 
| 479: | * @psalm-assert null|ExpectedType|class-string<ExpectedType> $value | 
| 480: | * | 
| 481: | * @param null|object|string $value | 
| 482: | * @param string $class | 
| 483: | * @param string $message | 
| 484: | * | 
| 485: | * @throws InvalidArgumentException | 
| 486: | */ | 
| 487: | public static function nullOrIsAOf($value, $class, $message = ''); | 
| 488: | |
| 489: | /** | 
| 490: | * @psalm-pure | 
| 491: | * @psalm-template ExpectedType of object | 
| 492: | * @psalm-param class-string<ExpectedType> $class | 
| 493: | * @psalm-assert iterable<ExpectedType|class-string<ExpectedType>> $value | 
| 494: | * | 
| 495: | * @param iterable<object|string> $value | 
| 496: | * @param string $class | 
| 497: | * @param string $message | 
| 498: | * | 
| 499: | * @throws InvalidArgumentException | 
| 500: | */ | 
| 501: | public static function allIsAOf($value, $class, $message = ''); | 
| 502: | |
| 503: | /** | 
| 504: | * @psalm-pure | 
| 505: | * @psalm-template UnexpectedType of object | 
| 506: | * @psalm-param class-string<UnexpectedType> $class | 
| 507: | * | 
| 508: | * @param null|object|string $value | 
| 509: | * @param string $class | 
| 510: | * @param string $message | 
| 511: | * | 
| 512: | * @throws InvalidArgumentException | 
| 513: | */ | 
| 514: | public static function nullOrIsNotA($value, $class, $message = ''); | 
| 515: | |
| 516: | /** | 
| 517: | * @psalm-pure | 
| 518: | * @psalm-template UnexpectedType of object | 
| 519: | * @psalm-param class-string<UnexpectedType> $class | 
| 520: | * | 
| 521: | * @param iterable<object|string> $value | 
| 522: | * @param string $class | 
| 523: | * @param string $message | 
| 524: | * | 
| 525: | * @throws InvalidArgumentException | 
| 526: | */ | 
| 527: | public static function allIsNotA($value, $class, $message = ''); | 
| 528: | |
| 529: | /** | 
| 530: | * @psalm-pure | 
| 531: | * @psalm-param array<class-string> $classes | 
| 532: | * | 
| 533: | * @param null|object|string $value | 
| 534: | * @param string[] $classes | 
| 535: | * @param string $message | 
| 536: | * | 
| 537: | * @throws InvalidArgumentException | 
| 538: | */ | 
| 539: | public static function nullOrIsAnyOf($value, $classes, $message = ''); | 
| 540: | |
| 541: | /** | 
| 542: | * @psalm-pure | 
| 543: | * @psalm-param array<class-string> $classes | 
| 544: | * | 
| 545: | * @param iterable<object|string> $value | 
| 546: | * @param string[] $classes | 
| 547: | * @param string $message | 
| 548: | * | 
| 549: | * @throws InvalidArgumentException | 
| 550: | */ | 
| 551: | public static function allIsAnyOf($value, $classes, $message = ''); | 
| 552: | |
| 553: | /** | 
| 554: | * @psalm-pure | 
| 555: | * @psalm-assert empty $value | 
| 556: | * | 
| 557: | * @param mixed $value | 
| 558: | * @param string $message | 
| 559: | * | 
| 560: | * @throws InvalidArgumentException | 
| 561: | */ | 
| 562: | public static function nullOrIsEmpty($value, $message = ''); | 
| 563: | |
| 564: | /** | 
| 565: | * @psalm-pure | 
| 566: | * @psalm-assert iterable<empty> $value | 
| 567: | * | 
| 568: | * @param mixed $value | 
| 569: | * @param string $message | 
| 570: | * | 
| 571: | * @throws InvalidArgumentException | 
| 572: | */ | 
| 573: | public static function allIsEmpty($value, $message = ''); | 
| 574: | |
| 575: | /** | 
| 576: | * @psalm-pure | 
| 577: | * | 
| 578: | * @param mixed $value | 
| 579: | * @param string $message | 
| 580: | * | 
| 581: | * @throws InvalidArgumentException | 
| 582: | */ | 
| 583: | public static function nullOrNotEmpty($value, $message = ''); | 
| 584: | |
| 585: | /** | 
| 586: | * @psalm-pure | 
| 587: | * | 
| 588: | * @param mixed $value | 
| 589: | * @param string $message | 
| 590: | * | 
| 591: | * @throws InvalidArgumentException | 
| 592: | */ | 
| 593: | public static function allNotEmpty($value, $message = ''); | 
| 594: | |
| 595: | /** | 
| 596: | * @psalm-pure | 
| 597: | * @psalm-assert iterable<null> $value | 
| 598: | * | 
| 599: | * @param mixed $value | 
| 600: | * @param string $message | 
| 601: | * | 
| 602: | * @throws InvalidArgumentException | 
| 603: | */ | 
| 604: | public static function allNull($value, $message = ''); | 
| 605: | |
| 606: | /** | 
| 607: | * @psalm-pure | 
| 608: | * | 
| 609: | * @param mixed $value | 
| 610: | * @param string $message | 
| 611: | * | 
| 612: | * @throws InvalidArgumentException | 
| 613: | */ | 
| 614: | public static function allNotNull($value, $message = ''); | 
| 615: | |
| 616: | /** | 
| 617: | * @psalm-pure | 
| 618: | * @psalm-assert null|true $value | 
| 619: | * | 
| 620: | * @param mixed $value | 
| 621: | * @param string $message | 
| 622: | * | 
| 623: | * @throws InvalidArgumentException | 
| 624: | */ | 
| 625: | public static function nullOrTrue($value, $message = ''); | 
| 626: | |
| 627: | /** | 
| 628: | * @psalm-pure | 
| 629: | * @psalm-assert iterable<true> $value | 
| 630: | * | 
| 631: | * @param mixed $value | 
| 632: | * @param string $message | 
| 633: | * | 
| 634: | * @throws InvalidArgumentException | 
| 635: | */ | 
| 636: | public static function allTrue($value, $message = ''); | 
| 637: | |
| 638: | /** | 
| 639: | * @psalm-pure | 
| 640: | * @psalm-assert null|false $value | 
| 641: | * | 
| 642: | * @param mixed $value | 
| 643: | * @param string $message | 
| 644: | * | 
| 645: | * @throws InvalidArgumentException | 
| 646: | */ | 
| 647: | public static function nullOrFalse($value, $message = ''); | 
| 648: | |
| 649: | /** | 
| 650: | * @psalm-pure | 
| 651: | * @psalm-assert iterable<false> $value | 
| 652: | * | 
| 653: | * @param mixed $value | 
| 654: | * @param string $message | 
| 655: | * | 
| 656: | * @throws InvalidArgumentException | 
| 657: | */ | 
| 658: | public static function allFalse($value, $message = ''); | 
| 659: | |
| 660: | /** | 
| 661: | * @psalm-pure | 
| 662: | * | 
| 663: | * @param mixed $value | 
| 664: | * @param string $message | 
| 665: | * | 
| 666: | * @throws InvalidArgumentException | 
| 667: | */ | 
| 668: | public static function nullOrNotFalse($value, $message = ''); | 
| 669: | |
| 670: | /** | 
| 671: | * @psalm-pure | 
| 672: | * | 
| 673: | * @param mixed $value | 
| 674: | * @param string $message | 
| 675: | * | 
| 676: | * @throws InvalidArgumentException | 
| 677: | */ | 
| 678: | public static function allNotFalse($value, $message = ''); | 
| 679: | |
| 680: | /** | 
| 681: | * @param mixed $value | 
| 682: | * @param string $message | 
| 683: | * | 
| 684: | * @throws InvalidArgumentException | 
| 685: | */ | 
| 686: | public static function nullOrIp($value, $message = ''); | 
| 687: | |
| 688: | /** | 
| 689: | * @param mixed $value | 
| 690: | * @param string $message | 
| 691: | * | 
| 692: | * @throws InvalidArgumentException | 
| 693: | */ | 
| 694: | public static function allIp($value, $message = ''); | 
| 695: | |
| 696: | /** | 
| 697: | * @param mixed $value | 
| 698: | * @param string $message | 
| 699: | * | 
| 700: | * @throws InvalidArgumentException | 
| 701: | */ | 
| 702: | public static function nullOrIpv4($value, $message = ''); | 
| 703: | |
| 704: | /** | 
| 705: | * @param mixed $value | 
| 706: | * @param string $message | 
| 707: | * | 
| 708: | * @throws InvalidArgumentException | 
| 709: | */ | 
| 710: | public static function allIpv4($value, $message = ''); | 
| 711: | |
| 712: | /** | 
| 713: | * @param mixed $value | 
| 714: | * @param string $message | 
| 715: | * | 
| 716: | * @throws InvalidArgumentException | 
| 717: | */ | 
| 718: | public static function nullOrIpv6($value, $message = ''); | 
| 719: | |
| 720: | /** | 
| 721: | * @param mixed $value | 
| 722: | * @param string $message | 
| 723: | * | 
| 724: | * @throws InvalidArgumentException | 
| 725: | */ | 
| 726: | public static function allIpv6($value, $message = ''); | 
| 727: | |
| 728: | /** | 
| 729: | * @param mixed $value | 
| 730: | * @param string $message | 
| 731: | * | 
| 732: | * @throws InvalidArgumentException | 
| 733: | */ | 
| 734: | public static function nullOrEmail($value, $message = ''); | 
| 735: | |
| 736: | /** | 
| 737: | * @param mixed $value | 
| 738: | * @param string $message | 
| 739: | * | 
| 740: | * @throws InvalidArgumentException | 
| 741: | */ | 
| 742: | public static function allEmail($value, $message = ''); | 
| 743: | |
| 744: | /** | 
| 745: | * @param null|array $values | 
| 746: | * @param string $message | 
| 747: | * | 
| 748: | * @throws InvalidArgumentException | 
| 749: | */ | 
| 750: | public static function nullOrUniqueValues($values, $message = ''); | 
| 751: | |
| 752: | /** | 
| 753: | * @param iterable<array> $values | 
| 754: | * @param string $message | 
| 755: | * | 
| 756: | * @throws InvalidArgumentException | 
| 757: | */ | 
| 758: | public static function allUniqueValues($values, $message = ''); | 
| 759: | |
| 760: | /** | 
| 761: | * @param mixed $value | 
| 762: | * @param mixed $expect | 
| 763: | * @param string $message | 
| 764: | * | 
| 765: | * @throws InvalidArgumentException | 
| 766: | */ | 
| 767: | public static function nullOrEq($value, $expect, $message = ''); | 
| 768: | |
| 769: | /** | 
| 770: | * @param mixed $value | 
| 771: | * @param mixed $expect | 
| 772: | * @param string $message | 
| 773: | * | 
| 774: | * @throws InvalidArgumentException | 
| 775: | */ | 
| 776: | public static function allEq($value, $expect, $message = ''); | 
| 777: | |
| 778: | /** | 
| 779: | * @param mixed $value | 
| 780: | * @param mixed $expect | 
| 781: | * @param string $message | 
| 782: | * | 
| 783: | * @throws InvalidArgumentException | 
| 784: | */ | 
| 785: | public static function nullOrNotEq($value, $expect, $message = ''); | 
| 786: | |
| 787: | /** | 
| 788: | * @param mixed $value | 
| 789: | * @param mixed $expect | 
| 790: | * @param string $message | 
| 791: | * | 
| 792: | * @throws InvalidArgumentException | 
| 793: | */ | 
| 794: | public static function allNotEq($value, $expect, $message = ''); | 
| 795: | |
| 796: | /** | 
| 797: | * @psalm-pure | 
| 798: | * | 
| 799: | * @param mixed $value | 
| 800: | * @param mixed $expect | 
| 801: | * @param string $message | 
| 802: | * | 
| 803: | * @throws InvalidArgumentException | 
| 804: | */ | 
| 805: | public static function nullOrSame($value, $expect, $message = ''); | 
| 806: | |
| 807: | /** | 
| 808: | * @psalm-pure | 
| 809: | * | 
| 810: | * @param mixed $value | 
| 811: | * @param mixed $expect | 
| 812: | * @param string $message | 
| 813: | * | 
| 814: | * @throws InvalidArgumentException | 
| 815: | */ | 
| 816: | public static function allSame($value, $expect, $message = ''); | 
| 817: | |
| 818: | /** | 
| 819: | * @psalm-pure | 
| 820: | * | 
| 821: | * @param mixed $value | 
| 822: | * @param mixed $expect | 
| 823: | * @param string $message | 
| 824: | * | 
| 825: | * @throws InvalidArgumentException | 
| 826: | */ | 
| 827: | public static function nullOrNotSame($value, $expect, $message = ''); | 
| 828: | |
| 829: | /** | 
| 830: | * @psalm-pure | 
| 831: | * | 
| 832: | * @param mixed $value | 
| 833: | * @param mixed $expect | 
| 834: | * @param string $message | 
| 835: | * | 
| 836: | * @throws InvalidArgumentException | 
| 837: | */ | 
| 838: | public static function allNotSame($value, $expect, $message = ''); | 
| 839: | |
| 840: | /** | 
| 841: | * @psalm-pure | 
| 842: | * | 
| 843: | * @param mixed $value | 
| 844: | * @param mixed $limit | 
| 845: | * @param string $message | 
| 846: | * | 
| 847: | * @throws InvalidArgumentException | 
| 848: | */ | 
| 849: | public static function nullOrGreaterThan($value, $limit, $message = ''); | 
| 850: | |
| 851: | /** | 
| 852: | * @psalm-pure | 
| 853: | * | 
| 854: | * @param mixed $value | 
| 855: | * @param mixed $limit | 
| 856: | * @param string $message | 
| 857: | * | 
| 858: | * @throws InvalidArgumentException | 
| 859: | */ | 
| 860: | public static function allGreaterThan($value, $limit, $message = ''); | 
| 861: | |
| 862: | /** | 
| 863: | * @psalm-pure | 
| 864: | * | 
| 865: | * @param mixed $value | 
| 866: | * @param mixed $limit | 
| 867: | * @param string $message | 
| 868: | * | 
| 869: | * @throws InvalidArgumentException | 
| 870: | */ | 
| 871: | public static function nullOrGreaterThanEq($value, $limit, $message = ''); | 
| 872: | |
| 873: | /** | 
| 874: | * @psalm-pure | 
| 875: | * | 
| 876: | * @param mixed $value | 
| 877: | * @param mixed $limit | 
| 878: | * @param string $message | 
| 879: | * | 
| 880: | * @throws InvalidArgumentException | 
| 881: | */ | 
| 882: | public static function allGreaterThanEq($value, $limit, $message = ''); | 
| 883: | |
| 884: | /** | 
| 885: | * @psalm-pure | 
| 886: | * | 
| 887: | * @param mixed $value | 
| 888: | * @param mixed $limit | 
| 889: | * @param string $message | 
| 890: | * | 
| 891: | * @throws InvalidArgumentException | 
| 892: | */ | 
| 893: | public static function nullOrLessThan($value, $limit, $message = ''); | 
| 894: | |
| 895: | /** | 
| 896: | * @psalm-pure | 
| 897: | * | 
| 898: | * @param mixed $value | 
| 899: | * @param mixed $limit | 
| 900: | * @param string $message | 
| 901: | * | 
| 902: | * @throws InvalidArgumentException | 
| 903: | */ | 
| 904: | public static function allLessThan($value, $limit, $message = ''); | 
| 905: | |
| 906: | /** | 
| 907: | * @psalm-pure | 
| 908: | * | 
| 909: | * @param mixed $value | 
| 910: | * @param mixed $limit | 
| 911: | * @param string $message | 
| 912: | * | 
| 913: | * @throws InvalidArgumentException | 
| 914: | */ | 
| 915: | public static function nullOrLessThanEq($value, $limit, $message = ''); | 
| 916: | |
| 917: | /** | 
| 918: | * @psalm-pure | 
| 919: | * | 
| 920: | * @param mixed $value | 
| 921: | * @param mixed $limit | 
| 922: | * @param string $message | 
| 923: | * | 
| 924: | * @throws InvalidArgumentException | 
| 925: | */ | 
| 926: | public static function allLessThanEq($value, $limit, $message = ''); | 
| 927: | |
| 928: | /** | 
| 929: | * @psalm-pure | 
| 930: | * | 
| 931: | * @param mixed $value | 
| 932: | * @param mixed $min | 
| 933: | * @param mixed $max | 
| 934: | * @param string $message | 
| 935: | * | 
| 936: | * @throws InvalidArgumentException | 
| 937: | */ | 
| 938: | public static function nullOrRange($value, $min, $max, $message = ''); | 
| 939: | |
| 940: | /** | 
| 941: | * @psalm-pure | 
| 942: | * | 
| 943: | * @param mixed $value | 
| 944: | * @param mixed $min | 
| 945: | * @param mixed $max | 
| 946: | * @param string $message | 
| 947: | * | 
| 948: | * @throws InvalidArgumentException | 
| 949: | */ | 
| 950: | public static function allRange($value, $min, $max, $message = ''); | 
| 951: | |
| 952: | /** | 
| 953: | * @psalm-pure | 
| 954: | * | 
| 955: | * @param mixed $value | 
| 956: | * @param array $values | 
| 957: | * @param string $message | 
| 958: | * | 
| 959: | * @throws InvalidArgumentException | 
| 960: | */ | 
| 961: | public static function nullOrOneOf($value, $values, $message = ''); | 
| 962: | |
| 963: | /** | 
| 964: | * @psalm-pure | 
| 965: | * | 
| 966: | * @param mixed $value | 
| 967: | * @param array $values | 
| 968: | * @param string $message | 
| 969: | * | 
| 970: | * @throws InvalidArgumentException | 
| 971: | */ | 
| 972: | public static function allOneOf($value, $values, $message = ''); | 
| 973: | |
| 974: | /** | 
| 975: | * @psalm-pure | 
| 976: | * | 
| 977: | * @param mixed $value | 
| 978: | * @param array $values | 
| 979: | * @param string $message | 
| 980: | * | 
| 981: | * @throws InvalidArgumentException | 
| 982: | */ | 
| 983: | public static function nullOrInArray($value, $values, $message = ''); | 
| 984: | |
| 985: | /** | 
| 986: | * @psalm-pure | 
| 987: | * | 
| 988: | * @param mixed $value | 
| 989: | * @param array $values | 
| 990: | * @param string $message | 
| 991: | * | 
| 992: | * @throws InvalidArgumentException | 
| 993: | */ | 
| 994: | public static function allInArray($value, $values, $message = ''); | 
| 995: | |
| 996: | /** | 
| 997: | * @psalm-pure | 
| 998: | * | 
| 999: | * @param null|string $value | 
| 1000: | * @param string $subString | 
| 1001: | * @param string $message | 
| 1002: | * | 
| 1003: | * @throws InvalidArgumentException | 
| 1004: | */ | 
| 1005: | public static function nullOrContains($value, $subString, $message = ''); | 
| 1006: | |
| 1007: | /** | 
| 1008: | * @psalm-pure | 
| 1009: | * | 
| 1010: | * @param iterable<string> $value | 
| 1011: | * @param string $subString | 
| 1012: | * @param string $message | 
| 1013: | * | 
| 1014: | * @throws InvalidArgumentException | 
| 1015: | */ | 
| 1016: | public static function allContains($value, $subString, $message = ''); | 
| 1017: | |
| 1018: | /** | 
| 1019: | * @psalm-pure | 
| 1020: | * | 
| 1021: | * @param null|string $value | 
| 1022: | * @param string $subString | 
| 1023: | * @param string $message | 
| 1024: | * | 
| 1025: | * @throws InvalidArgumentException | 
| 1026: | */ | 
| 1027: | public static function nullOrNotContains($value, $subString, $message = ''); | 
| 1028: | |
| 1029: | /** | 
| 1030: | * @psalm-pure | 
| 1031: | * | 
| 1032: | * @param iterable<string> $value | 
| 1033: | * @param string $subString | 
| 1034: | * @param string $message | 
| 1035: | * | 
| 1036: | * @throws InvalidArgumentException | 
| 1037: | */ | 
| 1038: | public static function allNotContains($value, $subString, $message = ''); | 
| 1039: | |
| 1040: | /** | 
| 1041: | * @psalm-pure | 
| 1042: | * | 
| 1043: | * @param null|string $value | 
| 1044: | * @param string $message | 
| 1045: | * | 
| 1046: | * @throws InvalidArgumentException | 
| 1047: | */ | 
| 1048: | public static function nullOrNotWhitespaceOnly($value, $message = ''); | 
| 1049: | |
| 1050: | /** | 
| 1051: | * @psalm-pure | 
| 1052: | * | 
| 1053: | * @param iterable<string> $value | 
| 1054: | * @param string $message | 
| 1055: | * | 
| 1056: | * @throws InvalidArgumentException | 
| 1057: | */ | 
| 1058: | public static function allNotWhitespaceOnly($value, $message = ''); | 
| 1059: | |
| 1060: | /** | 
| 1061: | * @psalm-pure | 
| 1062: | * | 
| 1063: | * @param null|string $value | 
| 1064: | * @param string $prefix | 
| 1065: | * @param string $message | 
| 1066: | * | 
| 1067: | * @throws InvalidArgumentException | 
| 1068: | */ | 
| 1069: | public static function nullOrStartsWith($value, $prefix, $message = ''); | 
| 1070: | |
| 1071: | /** | 
| 1072: | * @psalm-pure | 
| 1073: | * | 
| 1074: | * @param iterable<string> $value | 
| 1075: | * @param string $prefix | 
| 1076: | * @param string $message | 
| 1077: | * | 
| 1078: | * @throws InvalidArgumentException | 
| 1079: | */ | 
| 1080: | public static function allStartsWith($value, $prefix, $message = ''); | 
| 1081: | |
| 1082: | /** | 
| 1083: | * @psalm-pure | 
| 1084: | * | 
| 1085: | * @param null|string $value | 
| 1086: | * @param string $prefix | 
| 1087: | * @param string $message | 
| 1088: | * | 
| 1089: | * @throws InvalidArgumentException | 
| 1090: | */ | 
| 1091: | public static function nullOrNotStartsWith($value, $prefix, $message = ''); | 
| 1092: | |
| 1093: | /** | 
| 1094: | * @psalm-pure | 
| 1095: | * | 
| 1096: | * @param iterable<string> $value | 
| 1097: | * @param string $prefix | 
| 1098: | * @param string $message | 
| 1099: | * | 
| 1100: | * @throws InvalidArgumentException | 
| 1101: | */ | 
| 1102: | public static function allNotStartsWith($value, $prefix, $message = ''); | 
| 1103: | |
| 1104: | /** | 
| 1105: | * @psalm-pure | 
| 1106: | * | 
| 1107: | * @param mixed $value | 
| 1108: | * @param string $message | 
| 1109: | * | 
| 1110: | * @throws InvalidArgumentException | 
| 1111: | */ | 
| 1112: | public static function nullOrStartsWithLetter($value, $message = ''); | 
| 1113: | |
| 1114: | /** | 
| 1115: | * @psalm-pure | 
| 1116: | * | 
| 1117: | * @param mixed $value | 
| 1118: | * @param string $message | 
| 1119: | * | 
| 1120: | * @throws InvalidArgumentException | 
| 1121: | */ | 
| 1122: | public static function allStartsWithLetter($value, $message = ''); | 
| 1123: | |
| 1124: | /** | 
| 1125: | * @psalm-pure | 
| 1126: | * | 
| 1127: | * @param null|string $value | 
| 1128: | * @param string $suffix | 
| 1129: | * @param string $message | 
| 1130: | * | 
| 1131: | * @throws InvalidArgumentException | 
| 1132: | */ | 
| 1133: | public static function nullOrEndsWith($value, $suffix, $message = ''); | 
| 1134: | |
| 1135: | /** | 
| 1136: | * @psalm-pure | 
| 1137: | * | 
| 1138: | * @param iterable<string> $value | 
| 1139: | * @param string $suffix | 
| 1140: | * @param string $message | 
| 1141: | * | 
| 1142: | * @throws InvalidArgumentException | 
| 1143: | */ | 
| 1144: | public static function allEndsWith($value, $suffix, $message = ''); | 
| 1145: | |
| 1146: | /** | 
| 1147: | * @psalm-pure | 
| 1148: | * | 
| 1149: | * @param null|string $value | 
| 1150: | * @param string $suffix | 
| 1151: | * @param string $message | 
| 1152: | * | 
| 1153: | * @throws InvalidArgumentException | 
| 1154: | */ | 
| 1155: | public static function nullOrNotEndsWith($value, $suffix, $message = ''); | 
| 1156: | |
| 1157: | /** | 
| 1158: | * @psalm-pure | 
| 1159: | * | 
| 1160: | * @param iterable<string> $value | 
| 1161: | * @param string $suffix | 
| 1162: | * @param string $message | 
| 1163: | * | 
| 1164: | * @throws InvalidArgumentException | 
| 1165: | */ | 
| 1166: | public static function allNotEndsWith($value, $suffix, $message = ''); | 
| 1167: | |
| 1168: | /** | 
| 1169: | * @psalm-pure | 
| 1170: | * | 
| 1171: | * @param null|string $value | 
| 1172: | * @param string $pattern | 
| 1173: | * @param string $message | 
| 1174: | * | 
| 1175: | * @throws InvalidArgumentException | 
| 1176: | */ | 
| 1177: | public static function nullOrRegex($value, $pattern, $message = ''); | 
| 1178: | |
| 1179: | /** | 
| 1180: | * @psalm-pure | 
| 1181: | * | 
| 1182: | * @param iterable<string> $value | 
| 1183: | * @param string $pattern | 
| 1184: | * @param string $message | 
| 1185: | * | 
| 1186: | * @throws InvalidArgumentException | 
| 1187: | */ | 
| 1188: | public static function allRegex($value, $pattern, $message = ''); | 
| 1189: | |
| 1190: | /** | 
| 1191: | * @psalm-pure | 
| 1192: | * | 
| 1193: | * @param null|string $value | 
| 1194: | * @param string $pattern | 
| 1195: | * @param string $message | 
| 1196: | * | 
| 1197: | * @throws InvalidArgumentException | 
| 1198: | */ | 
| 1199: | public static function nullOrNotRegex($value, $pattern, $message = ''); | 
| 1200: | |
| 1201: | /** | 
| 1202: | * @psalm-pure | 
| 1203: | * | 
| 1204: | * @param iterable<string> $value | 
| 1205: | * @param string $pattern | 
| 1206: | * @param string $message | 
| 1207: | * | 
| 1208: | * @throws InvalidArgumentException | 
| 1209: | */ | 
| 1210: | public static function allNotRegex($value, $pattern, $message = ''); | 
| 1211: | |
| 1212: | /** | 
| 1213: | * @psalm-pure | 
| 1214: | * | 
| 1215: | * @param mixed $value | 
| 1216: | * @param string $message | 
| 1217: | * | 
| 1218: | * @throws InvalidArgumentException | 
| 1219: | */ | 
| 1220: | public static function nullOrUnicodeLetters($value, $message = ''); | 
| 1221: | |
| 1222: | /** | 
| 1223: | * @psalm-pure | 
| 1224: | * | 
| 1225: | * @param mixed $value | 
| 1226: | * @param string $message | 
| 1227: | * | 
| 1228: | * @throws InvalidArgumentException | 
| 1229: | */ | 
| 1230: | public static function allUnicodeLetters($value, $message = ''); | 
| 1231: | |
| 1232: | /** | 
| 1233: | * @psalm-pure | 
| 1234: | * | 
| 1235: | * @param mixed $value | 
| 1236: | * @param string $message | 
| 1237: | * | 
| 1238: | * @throws InvalidArgumentException | 
| 1239: | */ | 
| 1240: | public static function nullOrAlpha($value, $message = ''); | 
| 1241: | |
| 1242: | /** | 
| 1243: | * @psalm-pure | 
| 1244: | * | 
| 1245: | * @param mixed $value | 
| 1246: | * @param string $message | 
| 1247: | * | 
| 1248: | * @throws InvalidArgumentException | 
| 1249: | */ | 
| 1250: | public static function allAlpha($value, $message = ''); | 
| 1251: | |
| 1252: | /** | 
| 1253: | * @psalm-pure | 
| 1254: | * | 
| 1255: | * @param null|string $value | 
| 1256: | * @param string $message | 
| 1257: | * | 
| 1258: | * @throws InvalidArgumentException | 
| 1259: | */ | 
| 1260: | public static function nullOrDigits($value, $message = ''); | 
| 1261: | |
| 1262: | /** | 
| 1263: | * @psalm-pure | 
| 1264: | * | 
| 1265: | * @param iterable<string> $value | 
| 1266: | * @param string $message | 
| 1267: | * | 
| 1268: | * @throws InvalidArgumentException | 
| 1269: | */ | 
| 1270: | public static function allDigits($value, $message = ''); | 
| 1271: | |
| 1272: | /** | 
| 1273: | * @psalm-pure | 
| 1274: | * | 
| 1275: | * @param null|string $value | 
| 1276: | * @param string $message | 
| 1277: | * | 
| 1278: | * @throws InvalidArgumentException | 
| 1279: | */ | 
| 1280: | public static function nullOrAlnum($value, $message = ''); | 
| 1281: | |
| 1282: | /** | 
| 1283: | * @psalm-pure | 
| 1284: | * | 
| 1285: | * @param iterable<string> $value | 
| 1286: | * @param string $message | 
| 1287: | * | 
| 1288: | * @throws InvalidArgumentException | 
| 1289: | */ | 
| 1290: | public static function allAlnum($value, $message = ''); | 
| 1291: | |
| 1292: | /** | 
| 1293: | * @psalm-pure | 
| 1294: | * @psalm-assert null|lowercase-string $value | 
| 1295: | * | 
| 1296: | * @param null|string $value | 
| 1297: | * @param string $message | 
| 1298: | * | 
| 1299: | * @throws InvalidArgumentException | 
| 1300: | */ | 
| 1301: | public static function nullOrLower($value, $message = ''); | 
| 1302: | |
| 1303: | /** | 
| 1304: | * @psalm-pure | 
| 1305: | * @psalm-assert iterable<lowercase-string> $value | 
| 1306: | * | 
| 1307: | * @param iterable<string> $value | 
| 1308: | * @param string $message | 
| 1309: | * | 
| 1310: | * @throws InvalidArgumentException | 
| 1311: | */ | 
| 1312: | public static function allLower($value, $message = ''); | 
| 1313: | |
| 1314: | /** | 
| 1315: | * @psalm-pure | 
| 1316: | * | 
| 1317: | * @param null|string $value | 
| 1318: | * @param string $message | 
| 1319: | * | 
| 1320: | * @throws InvalidArgumentException | 
| 1321: | */ | 
| 1322: | public static function nullOrUpper($value, $message = ''); | 
| 1323: | |
| 1324: | /** | 
| 1325: | * @psalm-pure | 
| 1326: | * | 
| 1327: | * @param iterable<string> $value | 
| 1328: | * @param string $message | 
| 1329: | * | 
| 1330: | * @throws InvalidArgumentException | 
| 1331: | */ | 
| 1332: | public static function allUpper($value, $message = ''); | 
| 1333: | |
| 1334: | /** | 
| 1335: | * @psalm-pure | 
| 1336: | * | 
| 1337: | * @param null|string $value | 
| 1338: | * @param int $length | 
| 1339: | * @param string $message | 
| 1340: | * | 
| 1341: | * @throws InvalidArgumentException | 
| 1342: | */ | 
| 1343: | public static function nullOrLength($value, $length, $message = ''); | 
| 1344: | |
| 1345: | /** | 
| 1346: | * @psalm-pure | 
| 1347: | * | 
| 1348: | * @param iterable<string> $value | 
| 1349: | * @param int $length | 
| 1350: | * @param string $message | 
| 1351: | * | 
| 1352: | * @throws InvalidArgumentException | 
| 1353: | */ | 
| 1354: | public static function allLength($value, $length, $message = ''); | 
| 1355: | |
| 1356: | /** | 
| 1357: | * @psalm-pure | 
| 1358: | * | 
| 1359: | * @param null|string $value | 
| 1360: | * @param int|float $min | 
| 1361: | * @param string $message | 
| 1362: | * | 
| 1363: | * @throws InvalidArgumentException | 
| 1364: | */ | 
| 1365: | public static function nullOrMinLength($value, $min, $message = ''); | 
| 1366: | |
| 1367: | /** | 
| 1368: | * @psalm-pure | 
| 1369: | * | 
| 1370: | * @param iterable<string> $value | 
| 1371: | * @param int|float $min | 
| 1372: | * @param string $message | 
| 1373: | * | 
| 1374: | * @throws InvalidArgumentException | 
| 1375: | */ | 
| 1376: | public static function allMinLength($value, $min, $message = ''); | 
| 1377: | |
| 1378: | /** | 
| 1379: | * @psalm-pure | 
| 1380: | * | 
| 1381: | * @param null|string $value | 
| 1382: | * @param int|float $max | 
| 1383: | * @param string $message | 
| 1384: | * | 
| 1385: | * @throws InvalidArgumentException | 
| 1386: | */ | 
| 1387: | public static function nullOrMaxLength($value, $max, $message = ''); | 
| 1388: | |
| 1389: | /** | 
| 1390: | * @psalm-pure | 
| 1391: | * | 
| 1392: | * @param iterable<string> $value | 
| 1393: | * @param int|float $max | 
| 1394: | * @param string $message | 
| 1395: | * | 
| 1396: | * @throws InvalidArgumentException | 
| 1397: | */ | 
| 1398: | public static function allMaxLength($value, $max, $message = ''); | 
| 1399: | |
| 1400: | /** | 
| 1401: | * @psalm-pure | 
| 1402: | * | 
| 1403: | * @param null|string $value | 
| 1404: | * @param int|float $min | 
| 1405: | * @param int|float $max | 
| 1406: | * @param string $message | 
| 1407: | * | 
| 1408: | * @throws InvalidArgumentException | 
| 1409: | */ | 
| 1410: | public static function nullOrLengthBetween($value, $min, $max, $message = ''); | 
| 1411: | |
| 1412: | /** | 
| 1413: | * @psalm-pure | 
| 1414: | * | 
| 1415: | * @param iterable<string> $value | 
| 1416: | * @param int|float $min | 
| 1417: | * @param int|float $max | 
| 1418: | * @param string $message | 
| 1419: | * | 
| 1420: | * @throws InvalidArgumentException | 
| 1421: | */ | 
| 1422: | public static function allLengthBetween($value, $min, $max, $message = ''); | 
| 1423: | |
| 1424: | /** | 
| 1425: | * @param mixed $value | 
| 1426: | * @param string $message | 
| 1427: | * | 
| 1428: | * @throws InvalidArgumentException | 
| 1429: | */ | 
| 1430: | public static function nullOrFileExists($value, $message = ''); | 
| 1431: | |
| 1432: | /** | 
| 1433: | * @param mixed $value | 
| 1434: | * @param string $message | 
| 1435: | * | 
| 1436: | * @throws InvalidArgumentException | 
| 1437: | */ | 
| 1438: | public static function allFileExists($value, $message = ''); | 
| 1439: | |
| 1440: | /** | 
| 1441: | * @param mixed $value | 
| 1442: | * @param string $message | 
| 1443: | * | 
| 1444: | * @throws InvalidArgumentException | 
| 1445: | */ | 
| 1446: | public static function nullOrFile($value, $message = ''); | 
| 1447: | |
| 1448: | /** | 
| 1449: | * @param mixed $value | 
| 1450: | * @param string $message | 
| 1451: | * | 
| 1452: | * @throws InvalidArgumentException | 
| 1453: | */ | 
| 1454: | public static function allFile($value, $message = ''); | 
| 1455: | |
| 1456: | /** | 
| 1457: | * @param mixed $value | 
| 1458: | * @param string $message | 
| 1459: | * | 
| 1460: | * @throws InvalidArgumentException | 
| 1461: | */ | 
| 1462: | public static function nullOrDirectory($value, $message = ''); | 
| 1463: | |
| 1464: | /** | 
| 1465: | * @param mixed $value | 
| 1466: | * @param string $message | 
| 1467: | * | 
| 1468: | * @throws InvalidArgumentException | 
| 1469: | */ | 
| 1470: | public static function allDirectory($value, $message = ''); | 
| 1471: | |
| 1472: | /** | 
| 1473: | * @param null|string $value | 
| 1474: | * @param string $message | 
| 1475: | * | 
| 1476: | * @throws InvalidArgumentException | 
| 1477: | */ | 
| 1478: | public static function nullOrReadable($value, $message = ''); | 
| 1479: | |
| 1480: | /** | 
| 1481: | * @param iterable<string> $value | 
| 1482: | * @param string $message | 
| 1483: | * | 
| 1484: | * @throws InvalidArgumentException | 
| 1485: | */ | 
| 1486: | public static function allReadable($value, $message = ''); | 
| 1487: | |
| 1488: | /** | 
| 1489: | * @param null|string $value | 
| 1490: | * @param string $message | 
| 1491: | * | 
| 1492: | * @throws InvalidArgumentException | 
| 1493: | */ | 
| 1494: | public static function nullOrWritable($value, $message = ''); | 
| 1495: | |
| 1496: | /** | 
| 1497: | * @param iterable<string> $value | 
| 1498: | * @param string $message | 
| 1499: | * | 
| 1500: | * @throws InvalidArgumentException | 
| 1501: | */ | 
| 1502: | public static function allWritable($value, $message = ''); | 
| 1503: | |
| 1504: | /** | 
| 1505: | * @psalm-assert null|class-string $value | 
| 1506: | * | 
| 1507: | * @param mixed $value | 
| 1508: | * @param string $message | 
| 1509: | * | 
| 1510: | * @throws InvalidArgumentException | 
| 1511: | */ | 
| 1512: | public static function nullOrClassExists($value, $message = ''); | 
| 1513: | |
| 1514: | /** | 
| 1515: | * @psalm-assert iterable<class-string> $value | 
| 1516: | * | 
| 1517: | * @param mixed $value | 
| 1518: | * @param string $message | 
| 1519: | * | 
| 1520: | * @throws InvalidArgumentException | 
| 1521: | */ | 
| 1522: | public static function allClassExists($value, $message = ''); | 
| 1523: | |
| 1524: | /** | 
| 1525: | * @psalm-pure | 
| 1526: | * @psalm-template ExpectedType of object | 
| 1527: | * @psalm-param class-string<ExpectedType> $class | 
| 1528: | * @psalm-assert null|class-string<ExpectedType>|ExpectedType $value | 
| 1529: | * | 
| 1530: | * @param mixed $value | 
| 1531: | * @param string|object $class | 
| 1532: | * @param string $message | 
| 1533: | * | 
| 1534: | * @throws InvalidArgumentException | 
| 1535: | */ | 
| 1536: | public static function nullOrSubclassOf($value, $class, $message = ''); | 
| 1537: | |
| 1538: | /** | 
| 1539: | * @psalm-pure | 
| 1540: | * @psalm-template ExpectedType of object | 
| 1541: | * @psalm-param class-string<ExpectedType> $class | 
| 1542: | * @psalm-assert iterable<class-string<ExpectedType>|ExpectedType> $value | 
| 1543: | * | 
| 1544: | * @param mixed $value | 
| 1545: | * @param string|object $class | 
| 1546: | * @param string $message | 
| 1547: | * | 
| 1548: | * @throws InvalidArgumentException | 
| 1549: | */ | 
| 1550: | public static function allSubclassOf($value, $class, $message = ''); | 
| 1551: | |
| 1552: | /** | 
| 1553: | * @psalm-assert null|class-string $value | 
| 1554: | * | 
| 1555: | * @param mixed $value | 
| 1556: | * @param string $message | 
| 1557: | * | 
| 1558: | * @throws InvalidArgumentException | 
| 1559: | */ | 
| 1560: | public static function nullOrInterfaceExists($value, $message = ''); | 
| 1561: | |
| 1562: | /** | 
| 1563: | * @psalm-assert iterable<class-string> $value | 
| 1564: | * | 
| 1565: | * @param mixed $value | 
| 1566: | * @param string $message | 
| 1567: | * | 
| 1568: | * @throws InvalidArgumentException | 
| 1569: | */ | 
| 1570: | public static function allInterfaceExists($value, $message = ''); | 
| 1571: | |
| 1572: | /** | 
| 1573: | * @psalm-pure | 
| 1574: | * @psalm-template ExpectedType of object | 
| 1575: | * @psalm-param class-string<ExpectedType> $interface | 
| 1576: | * @psalm-assert null|class-string<ExpectedType> $value | 
| 1577: | * | 
| 1578: | * @param mixed $value | 
| 1579: | * @param mixed $interface | 
| 1580: | * @param string $message | 
| 1581: | * | 
| 1582: | * @throws InvalidArgumentException | 
| 1583: | */ | 
| 1584: | public static function nullOrImplementsInterface($value, $interface, $message = ''); | 
| 1585: | |
| 1586: | /** | 
| 1587: | * @psalm-pure | 
| 1588: | * @psalm-template ExpectedType of object | 
| 1589: | * @psalm-param class-string<ExpectedType> $interface | 
| 1590: | * @psalm-assert iterable<class-string<ExpectedType>> $value | 
| 1591: | * | 
| 1592: | * @param mixed $value | 
| 1593: | * @param mixed $interface | 
| 1594: | * @param string $message | 
| 1595: | * | 
| 1596: | * @throws InvalidArgumentException | 
| 1597: | */ | 
| 1598: | public static function allImplementsInterface($value, $interface, $message = ''); | 
| 1599: | |
| 1600: | /** | 
| 1601: | * @psalm-pure | 
| 1602: | * @psalm-param null|class-string|object $classOrObject | 
| 1603: | * | 
| 1604: | * @param null|string|object $classOrObject | 
| 1605: | * @param mixed $property | 
| 1606: | * @param string $message | 
| 1607: | * | 
| 1608: | * @throws InvalidArgumentException | 
| 1609: | */ | 
| 1610: | public static function nullOrPropertyExists($classOrObject, $property, $message = ''); | 
| 1611: | |
| 1612: | /** | 
| 1613: | * @psalm-pure | 
| 1614: | * @psalm-param iterable<class-string|object> $classOrObject | 
| 1615: | * | 
| 1616: | * @param iterable<string|object> $classOrObject | 
| 1617: | * @param mixed $property | 
| 1618: | * @param string $message | 
| 1619: | * | 
| 1620: | * @throws InvalidArgumentException | 
| 1621: | */ | 
| 1622: | public static function allPropertyExists($classOrObject, $property, $message = ''); | 
| 1623: | |
| 1624: | /** | 
| 1625: | * @psalm-pure | 
| 1626: | * @psalm-param null|class-string|object $classOrObject | 
| 1627: | * | 
| 1628: | * @param null|string|object $classOrObject | 
| 1629: | * @param mixed $property | 
| 1630: | * @param string $message | 
| 1631: | * | 
| 1632: | * @throws InvalidArgumentException | 
| 1633: | */ | 
| 1634: | public static function nullOrPropertyNotExists($classOrObject, $property, $message = ''); | 
| 1635: | |
| 1636: | /** | 
| 1637: | * @psalm-pure | 
| 1638: | * @psalm-param iterable<class-string|object> $classOrObject | 
| 1639: | * | 
| 1640: | * @param iterable<string|object> $classOrObject | 
| 1641: | * @param mixed $property | 
| 1642: | * @param string $message | 
| 1643: | * | 
| 1644: | * @throws InvalidArgumentException | 
| 1645: | */ | 
| 1646: | public static function allPropertyNotExists($classOrObject, $property, $message = ''); | 
| 1647: | |
| 1648: | /** | 
| 1649: | * @psalm-pure | 
| 1650: | * @psalm-param null|class-string|object $classOrObject | 
| 1651: | * | 
| 1652: | * @param null|string|object $classOrObject | 
| 1653: | * @param mixed $method | 
| 1654: | * @param string $message | 
| 1655: | * | 
| 1656: | * @throws InvalidArgumentException | 
| 1657: | */ | 
| 1658: | public static function nullOrMethodExists($classOrObject, $method, $message = ''); | 
| 1659: | |
| 1660: | /** | 
| 1661: | * @psalm-pure | 
| 1662: | * @psalm-param iterable<class-string|object> $classOrObject | 
| 1663: | * | 
| 1664: | * @param iterable<string|object> $classOrObject | 
| 1665: | * @param mixed $method | 
| 1666: | * @param string $message | 
| 1667: | * | 
| 1668: | * @throws InvalidArgumentException | 
| 1669: | */ | 
| 1670: | public static function allMethodExists($classOrObject, $method, $message = ''); | 
| 1671: | |
| 1672: | /** | 
| 1673: | * @psalm-pure | 
| 1674: | * @psalm-param null|class-string|object $classOrObject | 
| 1675: | * | 
| 1676: | * @param null|string|object $classOrObject | 
| 1677: | * @param mixed $method | 
| 1678: | * @param string $message | 
| 1679: | * | 
| 1680: | * @throws InvalidArgumentException | 
| 1681: | */ | 
| 1682: | public static function nullOrMethodNotExists($classOrObject, $method, $message = ''); | 
| 1683: | |
| 1684: | /** | 
| 1685: | * @psalm-pure | 
| 1686: | * @psalm-param iterable<class-string|object> $classOrObject | 
| 1687: | * | 
| 1688: | * @param iterable<string|object> $classOrObject | 
| 1689: | * @param mixed $method | 
| 1690: | * @param string $message | 
| 1691: | * | 
| 1692: | * @throws InvalidArgumentException | 
| 1693: | */ | 
| 1694: | public static function allMethodNotExists($classOrObject, $method, $message = ''); | 
| 1695: | |
| 1696: | /** | 
| 1697: | * @psalm-pure | 
| 1698: | * | 
| 1699: | * @param null|array $array | 
| 1700: | * @param string|int $key | 
| 1701: | * @param string $message | 
| 1702: | * | 
| 1703: | * @throws InvalidArgumentException | 
| 1704: | */ | 
| 1705: | public static function nullOrKeyExists($array, $key, $message = ''); | 
| 1706: | |
| 1707: | /** | 
| 1708: | * @psalm-pure | 
| 1709: | * | 
| 1710: | * @param iterable<array> $array | 
| 1711: | * @param string|int $key | 
| 1712: | * @param string $message | 
| 1713: | * | 
| 1714: | * @throws InvalidArgumentException | 
| 1715: | */ | 
| 1716: | public static function allKeyExists($array, $key, $message = ''); | 
| 1717: | |
| 1718: | /** | 
| 1719: | * @psalm-pure | 
| 1720: | * | 
| 1721: | * @param null|array $array | 
| 1722: | * @param string|int $key | 
| 1723: | * @param string $message | 
| 1724: | * | 
| 1725: | * @throws InvalidArgumentException | 
| 1726: | */ | 
| 1727: | public static function nullOrKeyNotExists($array, $key, $message = ''); | 
| 1728: | |
| 1729: | /** | 
| 1730: | * @psalm-pure | 
| 1731: | * | 
| 1732: | * @param iterable<array> $array | 
| 1733: | * @param string|int $key | 
| 1734: | * @param string $message | 
| 1735: | * | 
| 1736: | * @throws InvalidArgumentException | 
| 1737: | */ | 
| 1738: | public static function allKeyNotExists($array, $key, $message = ''); | 
| 1739: | |
| 1740: | /** | 
| 1741: | * @psalm-pure | 
| 1742: | * @psalm-assert null|array-key $value | 
| 1743: | * | 
| 1744: | * @param mixed $value | 
| 1745: | * @param string $message | 
| 1746: | * | 
| 1747: | * @throws InvalidArgumentException | 
| 1748: | */ | 
| 1749: | public static function nullOrValidArrayKey($value, $message = ''); | 
| 1750: | |
| 1751: | /** | 
| 1752: | * @psalm-pure | 
| 1753: | * @psalm-assert iterable<array-key> $value | 
| 1754: | * | 
| 1755: | * @param mixed $value | 
| 1756: | * @param string $message | 
| 1757: | * | 
| 1758: | * @throws InvalidArgumentException | 
| 1759: | */ | 
| 1760: | public static function allValidArrayKey($value, $message = ''); | 
| 1761: | |
| 1762: | /** | 
| 1763: | * @param null|Countable|array $array | 
| 1764: | * @param int $number | 
| 1765: | * @param string $message | 
| 1766: | * | 
| 1767: | * @throws InvalidArgumentException | 
| 1768: | */ | 
| 1769: | public static function nullOrCount($array, $number, $message = ''); | 
| 1770: | |
| 1771: | /** | 
| 1772: | * @param iterable<Countable|array> $array | 
| 1773: | * @param int $number | 
| 1774: | * @param string $message | 
| 1775: | * | 
| 1776: | * @throws InvalidArgumentException | 
| 1777: | */ | 
| 1778: | public static function allCount($array, $number, $message = ''); | 
| 1779: | |
| 1780: | /** | 
| 1781: | * @param null|Countable|array $array | 
| 1782: | * @param int|float $min | 
| 1783: | * @param string $message | 
| 1784: | * | 
| 1785: | * @throws InvalidArgumentException | 
| 1786: | */ | 
| 1787: | public static function nullOrMinCount($array, $min, $message = ''); | 
| 1788: | |
| 1789: | /** | 
| 1790: | * @param iterable<Countable|array> $array | 
| 1791: | * @param int|float $min | 
| 1792: | * @param string $message | 
| 1793: | * | 
| 1794: | * @throws InvalidArgumentException | 
| 1795: | */ | 
| 1796: | public static function allMinCount($array, $min, $message = ''); | 
| 1797: | |
| 1798: | /** | 
| 1799: | * @param null|Countable|array $array | 
| 1800: | * @param int|float $max | 
| 1801: | * @param string $message | 
| 1802: | * | 
| 1803: | * @throws InvalidArgumentException | 
| 1804: | */ | 
| 1805: | public static function nullOrMaxCount($array, $max, $message = ''); | 
| 1806: | |
| 1807: | /** | 
| 1808: | * @param iterable<Countable|array> $array | 
| 1809: | * @param int|float $max | 
| 1810: | * @param string $message | 
| 1811: | * | 
| 1812: | * @throws InvalidArgumentException | 
| 1813: | */ | 
| 1814: | public static function allMaxCount($array, $max, $message = ''); | 
| 1815: | |
| 1816: | /** | 
| 1817: | * @param null|Countable|array $array | 
| 1818: | * @param int|float $min | 
| 1819: | * @param int|float $max | 
| 1820: | * @param string $message | 
| 1821: | * | 
| 1822: | * @throws InvalidArgumentException | 
| 1823: | */ | 
| 1824: | public static function nullOrCountBetween($array, $min, $max, $message = ''); | 
| 1825: | |
| 1826: | /** | 
| 1827: | * @param iterable<Countable|array> $array | 
| 1828: | * @param int|float $min | 
| 1829: | * @param int|float $max | 
| 1830: | * @param string $message | 
| 1831: | * | 
| 1832: | * @throws InvalidArgumentException | 
| 1833: | */ | 
| 1834: | public static function allCountBetween($array, $min, $max, $message = ''); | 
| 1835: | |
| 1836: | /** | 
| 1837: | * @psalm-pure | 
| 1838: | * @psalm-assert null|list $array | 
| 1839: | * | 
| 1840: | * @param mixed $array | 
| 1841: | * @param string $message | 
| 1842: | * | 
| 1843: | * @throws InvalidArgumentException | 
| 1844: | */ | 
| 1845: | public static function nullOrIsList($array, $message = ''); | 
| 1846: | |
| 1847: | /** | 
| 1848: | * @psalm-pure | 
| 1849: | * @psalm-assert iterable<list> $array | 
| 1850: | * | 
| 1851: | * @param mixed $array | 
| 1852: | * @param string $message | 
| 1853: | * | 
| 1854: | * @throws InvalidArgumentException | 
| 1855: | */ | 
| 1856: | public static function allIsList($array, $message = ''); | 
| 1857: | |
| 1858: | /** | 
| 1859: | * @psalm-pure | 
| 1860: | * @psalm-assert null|non-empty-list $array | 
| 1861: | * | 
| 1862: | * @param mixed $array | 
| 1863: | * @param string $message | 
| 1864: | * | 
| 1865: | * @throws InvalidArgumentException | 
| 1866: | */ | 
| 1867: | public static function nullOrIsNonEmptyList($array, $message = ''); | 
| 1868: | |
| 1869: | /** | 
| 1870: | * @psalm-pure | 
| 1871: | * @psalm-assert iterable<non-empty-list> $array | 
| 1872: | * | 
| 1873: | * @param mixed $array | 
| 1874: | * @param string $message | 
| 1875: | * | 
| 1876: | * @throws InvalidArgumentException | 
| 1877: | */ | 
| 1878: | public static function allIsNonEmptyList($array, $message = ''); | 
| 1879: | |
| 1880: | /** | 
| 1881: | * @psalm-pure | 
| 1882: | * @psalm-template T | 
| 1883: | * @psalm-param null|mixed|array<T> $array | 
| 1884: | * @psalm-assert null|array<string, T> $array | 
| 1885: | * | 
| 1886: | * @param mixed $array | 
| 1887: | * @param string $message | 
| 1888: | * | 
| 1889: | * @throws InvalidArgumentException | 
| 1890: | */ | 
| 1891: | public static function nullOrIsMap($array, $message = ''); | 
| 1892: | |
| 1893: | /** | 
| 1894: | * @psalm-pure | 
| 1895: | * @psalm-template T | 
| 1896: | * @psalm-param iterable<mixed|array<T>> $array | 
| 1897: | * @psalm-assert iterable<array<string, T>> $array | 
| 1898: | * | 
| 1899: | * @param mixed $array | 
| 1900: | * @param string $message | 
| 1901: | * | 
| 1902: | * @throws InvalidArgumentException | 
| 1903: | */ | 
| 1904: | public static function allIsMap($array, $message = ''); | 
| 1905: | |
| 1906: | /** | 
| 1907: | * @psalm-pure | 
| 1908: | * @psalm-template T | 
| 1909: | * @psalm-param null|mixed|array<T> $array | 
| 1910: | * | 
| 1911: | * @param mixed $array | 
| 1912: | * @param string $message | 
| 1913: | * | 
| 1914: | * @throws InvalidArgumentException | 
| 1915: | */ | 
| 1916: | public static function nullOrIsNonEmptyMap($array, $message = ''); | 
| 1917: | |
| 1918: | /** | 
| 1919: | * @psalm-pure | 
| 1920: | * @psalm-template T | 
| 1921: | * @psalm-param iterable<mixed|array<T>> $array | 
| 1922: | * | 
| 1923: | * @param mixed $array | 
| 1924: | * @param string $message | 
| 1925: | * | 
| 1926: | * @throws InvalidArgumentException | 
| 1927: | */ | 
| 1928: | public static function allIsNonEmptyMap($array, $message = ''); | 
| 1929: | |
| 1930: | /** | 
| 1931: | * @psalm-pure | 
| 1932: | * | 
| 1933: | * @param null|string $value | 
| 1934: | * @param string $message | 
| 1935: | * | 
| 1936: | * @throws InvalidArgumentException | 
| 1937: | */ | 
| 1938: | public static function nullOrUuid($value, $message = ''); | 
| 1939: | |
| 1940: | /** | 
| 1941: | * @psalm-pure | 
| 1942: | * | 
| 1943: | * @param iterable<string> $value | 
| 1944: | * @param string $message | 
| 1945: | * | 
| 1946: | * @throws InvalidArgumentException | 
| 1947: | */ | 
| 1948: | public static function allUuid($value, $message = ''); | 
| 1949: | |
| 1950: | /** | 
| 1951: | * @psalm-param class-string<Throwable> $class | 
| 1952: | * | 
| 1953: | * @param null|Closure $expression | 
| 1954: | * @param string $class | 
| 1955: | * @param string $message | 
| 1956: | * | 
| 1957: | * @throws InvalidArgumentException | 
| 1958: | */ | 
| 1959: | public static function nullOrThrows($expression, $class = 'Exception', $message = ''); | 
| 1960: | |
| 1961: | /** | 
| 1962: | * @psalm-param class-string<Throwable> $class | 
| 1963: | * | 
| 1964: | * @param iterable<Closure> $expression | 
| 1965: | * @param string $class | 
| 1966: | * @param string $message | 
| 1967: | * | 
| 1968: | * @throws InvalidArgumentException | 
| 1969: | */ | 
| 1970: | public static function allThrows($expression, $class = 'Exception', $message = ''); | 
| 1971: | } | 
| 1972: |