Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/concrete-api.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ use Respect\Validation\Validators;
$usernameValidator = ValidatorBuilder::init(
new Validators\Key(
'name',
new Validators\AllOf(
new Validators\LogicAnd(
new Validators\Alnum(),
new Validators\Not(
new Validators\Spaced(),
Expand Down
2 changes: 1 addition & 1 deletion docs/feature-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ Respect\Validation offers over 150 validators, many of which are designed to add
- Validating **Array structures**: [KeySet](validators/KeySet.md).
- Validating **Object properties**: [Property](validators/Property.md), [PropertyOptional](validators/PropertyOptional.md), [PropertyExists](validators/PropertyExists.md).
- Using **Conditional validation**: [NullOr](validators/NullOr.md), [UndefOr](validators/UndefOr.md), [When](validators/When.md).
- Using **Grouped validation**: [AllOf](validators/AllOf.md), [AnyOf](validators/AnyOf.md), [NoneOf](validators/NoneOf.md), [OneOf](validators/OneOf.md)
- Using **Logical validation**: [LogicAnd](validators/LogicAnd.md), [AnyOf](validators/AnyOf.md), [NoneOf](validators/NoneOf.md), [OneOf](validators/OneOf.md)
- Validating **Each** value in the input: [Each](validators/Each.md).
- Validating the **Length** of the input: [Length](validators/Length.md).
- Validating the **Maximum** value in the input: [Max](validators/Max.md).
Expand Down
10 changes: 7 additions & 3 deletions docs/list-of-validators-by-category.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,9 +58,9 @@

## Composite

- [AllOf](validators/AllOf.md)
- [AnyOf](validators/AnyOf.md)
- [Circuit](validators/Circuit.md)
- [LogicAnd](validators/LogicAnd.md)
- [NoneOf](validators/NoneOf.md)
- [OneOf](validators/OneOf.md)

Expand Down Expand Up @@ -144,6 +144,10 @@
- [PostalCode](validators/PostalCode.md)
- [SubdivisionCode](validators/SubdivisionCode.md)

## Logical

- [LogicAnd](validators/LogicAnd.md)

## Math

- [Factor](validators/Factor.md)
Expand All @@ -167,14 +171,14 @@

## Nesting

- [AllOf](validators/AllOf.md)
- [AnyOf](validators/AnyOf.md)
- [Call](validators/Call.md)
- [Circuit](validators/Circuit.md)
- [Each](validators/Each.md)
- [Key](validators/Key.md)
- [KeySet](validators/KeySet.md)
- [Lazy](validators/Lazy.md)
- [LogicAnd](validators/LogicAnd.md)
- [NoneOf](validators/NoneOf.md)
- [Not](validators/Not.md)
- [NullOr](validators/NullOr.md)
Expand Down Expand Up @@ -303,7 +307,6 @@
## Alphabetically

- [All](validators/All.md)
- [AllOf](validators/AllOf.md)
- [Alnum](validators/Alnum.md)
- [Alpha](validators/Alpha.md)
- [AlwaysInvalid](validators/AlwaysInvalid.md)
Expand Down Expand Up @@ -392,6 +395,7 @@
- [Length](validators/Length.md)
- [LessThan](validators/LessThan.md)
- [LessThanOrEqual](validators/LessThanOrEqual.md)
- [LogicAnd](validators/LogicAnd.md)
- [Lowercase](validators/Lowercase.md)
- [Luhn](validators/Luhn.md)
- [MacAddress](validators/MacAddress.md)
Expand Down
2 changes: 1 addition & 1 deletion docs/validators/AnyOf.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,9 @@ so `AnyOf()` returns true.

See also:

- [AllOf](AllOf.md)
- [Circuit](Circuit.md)
- [ContainsAny](ContainsAny.md)
- [LogicAnd](LogicAnd.md)
- [NoneOf](NoneOf.md)
- [OneOf](OneOf.md)
- [When](When.md)
2 changes: 1 addition & 1 deletion docs/validators/Circuit.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,9 +40,9 @@ This validator does not have any templates, because it will always return the re

See also:

- [AllOf](AllOf.md)
- [AnyOf](AnyOf.md)
- [Lazy](Lazy.md)
- [LogicAnd](LogicAnd.md)
- [NoneOf](NoneOf.md)
- [OneOf](OneOf.md)
- [SubdivisionCode](SubdivisionCode.md)
Expand Down
21 changes: 11 additions & 10 deletions docs/validators/AllOf.md → docs/validators/LogicAnd.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
# AllOf
# LogicAnd

- `AllOf(Validator $validator1, Validator $validator2, Validator ...$validator)`
- `LogicAnd(Validator $validator1, Validator $validator2, Validator ...$validator)`

Will validate if all inner validators validates.
Validates that all inner validators pass, acting as a logical `and` operator.

```php
v::allOf(v::intVal(), v::positive())->isValid(15); // true
v::logicAnd(v::intVal(), v::positive())->isValid(15); // true
```

## Templates

### `AllOf::TEMPLATE_SOME`
### `LogicAnd::TEMPLATE_SOME`

Used when some validators must be failed.

Expand All @@ -19,7 +19,7 @@ Used when some validators must be failed.
| `default` | {{subject}} must pass the rules |
| `inverted` | {{subject}} must pass the rules |

### `AllOf::TEMPLATE_ALL`
### `LogicAnd::TEMPLATE_ALL`

Used when all validators have failed.

Expand All @@ -37,14 +37,15 @@ Used when all validators have failed.
## Categorization

- Composite
- Logical
- Nesting

## Changelog

| Version | Description |
| ------: | -------------------------------------------- |
| 3.0.0 | Require at least two validators to be passed |
| 0.3.9 | Created |
| Version | Description |
| ------: | --------------------------------------------------------- |
| 3.0.0 | Require at least two validators and renamed to `LogicAnd` |
| 0.3.9 | Created as `AllOf` |

---

Expand Down
2 changes: 1 addition & 1 deletion docs/validators/NoneOf.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,9 +55,9 @@ Used when all validators have passed.

See also:

- [AllOf](AllOf.md)
- [AnyOf](AnyOf.md)
- [Circuit](Circuit.md)
- [LogicAnd](LogicAnd.md)
- [Not](Not.md)
- [OneOf](OneOf.md)
- [When](When.md)
2 changes: 1 addition & 1 deletion docs/validators/OneOf.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,8 +56,8 @@ Used when more than one validator has passed.

See also:

- [AllOf](AllOf.md)
- [AnyOf](AnyOf.md)
- [Circuit](Circuit.md)
- [LogicAnd](LogicAnd.md)
- [NoneOf](NoneOf.md)
- [When](When.md)
2 changes: 1 addition & 1 deletion docs/validators/When.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,9 @@ When `$else` is not defined use [AlwaysInvalid](AlwaysInvalid.md)

See also:

- [AllOf](AllOf.md)
- [AlwaysInvalid](AlwaysInvalid.md)
- [AnyOf](AnyOf.md)
- [Circuit](Circuit.md)
- [LogicAnd](LogicAnd.md)
- [NoneOf](NoneOf.md)
- [OneOf](OneOf.md)
8 changes: 6 additions & 2 deletions library/Mixins/AllBuilder.php
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,6 @@

interface AllBuilder
{
public static function allAllOf(Validator $validator1, Validator $validator2, Validator ...$validators): Chain;

public static function allAlnum(string ...$additionalChars): Chain;

public static function allAlpha(string ...$additionalChars): Chain;
Expand Down Expand Up @@ -195,6 +193,12 @@ public static function allLessThan(mixed $compareTo): Chain;

public static function allLessThanOrEqual(mixed $compareTo): Chain;

public static function allLogicAnd(
Validator $validator1,
Validator $validator2,
Validator ...$validators,
): Chain;

public static function allLowercase(): Chain;

public static function allLuhn(): Chain;
Expand Down
4 changes: 2 additions & 2 deletions library/Mixins/AllChain.php
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,6 @@

interface AllChain
{
public function allAllOf(Validator $validator1, Validator $validator2, Validator ...$validators): Chain;

public function allAlnum(string ...$additionalChars): Chain;

public function allAlpha(string ...$additionalChars): Chain;
Expand Down Expand Up @@ -195,6 +193,8 @@ public function allLessThan(mixed $compareTo): Chain;

public function allLessThanOrEqual(mixed $compareTo): Chain;

public function allLogicAnd(Validator $validator1, Validator $validator2, Validator ...$validators): Chain;

public function allLowercase(): Chain;

public function allLuhn(): Chain;
Expand Down
4 changes: 2 additions & 2 deletions library/Mixins/Builder.php
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,6 @@ interface Builder extends
{
public static function all(Validator $validator): Chain;

public static function allOf(Validator $validator1, Validator $validator2, Validator ...$validators): Chain;

public static function alnum(string ...$additionalChars): Chain;

public static function alpha(string ...$additionalChars): Chain;
Expand Down Expand Up @@ -219,6 +217,8 @@ public static function lessThan(mixed $compareTo): Chain;

public static function lessThanOrEqual(mixed $compareTo): Chain;

public static function logicAnd(Validator $validator1, Validator $validator2, Validator ...$validators): Chain;

public static function lowercase(): Chain;

public static function luhn(): Chain;
Expand Down
4 changes: 2 additions & 2 deletions library/Mixins/Chain.php
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,6 @@ interface Chain extends
{
public function all(Validator $validator): Chain;

public function allOf(Validator $validator1, Validator $validator2, Validator ...$validators): Chain;

public function alnum(string ...$additionalChars): Chain;

public function alpha(string ...$additionalChars): Chain;
Expand Down Expand Up @@ -222,6 +220,8 @@ public function lessThan(mixed $compareTo): Chain;

public function lessThanOrEqual(mixed $compareTo): Chain;

public function logicAnd(Validator $validator1, Validator $validator2, Validator ...$validators): Chain;

public function lowercase(): Chain;

public function luhn(): Chain;
Expand Down
14 changes: 7 additions & 7 deletions library/Mixins/KeyBuilder.php
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,6 @@ interface KeyBuilder
{
public static function keyAll(int|string $key, Validator $validator): Chain;

public static function keyAllOf(
int|string $key,
Validator $validator1,
Validator $validator2,
Validator ...$validators,
): Chain;

public static function keyAlnum(int|string $key, string ...$additionalChars): Chain;

public static function keyAlpha(int|string $key, string ...$additionalChars): Chain;
Expand Down Expand Up @@ -214,6 +207,13 @@ public static function keyLessThan(int|string $key, mixed $compareTo): Chain;

public static function keyLessThanOrEqual(int|string $key, mixed $compareTo): Chain;

public static function keyLogicAnd(
int|string $key,
Validator $validator1,
Validator $validator2,
Validator ...$validators,
): Chain;

public static function keyLowercase(int|string $key): Chain;

public static function keyLuhn(int|string $key): Chain;
Expand Down
14 changes: 7 additions & 7 deletions library/Mixins/KeyChain.php
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,6 @@ interface KeyChain
{
public function keyAll(int|string $key, Validator $validator): Chain;

public function keyAllOf(
int|string $key,
Validator $validator1,
Validator $validator2,
Validator ...$validators,
): Chain;

public function keyAlnum(int|string $key, string ...$additionalChars): Chain;

public function keyAlpha(int|string $key, string ...$additionalChars): Chain;
Expand Down Expand Up @@ -214,6 +207,13 @@ public function keyLessThan(int|string $key, mixed $compareTo): Chain;

public function keyLessThanOrEqual(int|string $key, mixed $compareTo): Chain;

public function keyLogicAnd(
int|string $key,
Validator $validator1,
Validator $validator2,
Validator ...$validators,
): Chain;

public function keyLowercase(int|string $key): Chain;

public function keyLuhn(int|string $key): Chain;
Expand Down
8 changes: 6 additions & 2 deletions library/Mixins/NotBuilder.php
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,6 @@ interface NotBuilder
{
public static function notAll(Validator $validator): Chain;

public static function notAllOf(Validator $validator1, Validator $validator2, Validator ...$validators): Chain;

public static function notAlnum(string ...$additionalChars): Chain;

public static function notAlpha(string ...$additionalChars): Chain;
Expand Down Expand Up @@ -207,6 +205,12 @@ public static function notLessThan(mixed $compareTo): Chain;

public static function notLessThanOrEqual(mixed $compareTo): Chain;

public static function notLogicAnd(
Validator $validator1,
Validator $validator2,
Validator ...$validators,
): Chain;

public static function notLowercase(): Chain;

public static function notLuhn(): Chain;
Expand Down
4 changes: 2 additions & 2 deletions library/Mixins/NotChain.php
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,6 @@ interface NotChain
{
public function notAll(Validator $validator): Chain;

public function notAllOf(Validator $validator1, Validator $validator2, Validator ...$validators): Chain;

public function notAlnum(string ...$additionalChars): Chain;

public function notAlpha(string ...$additionalChars): Chain;
Expand Down Expand Up @@ -207,6 +205,8 @@ public function notLessThan(mixed $compareTo): Chain;

public function notLessThanOrEqual(mixed $compareTo): Chain;

public function notLogicAnd(Validator $validator1, Validator $validator2, Validator ...$validators): Chain;

public function notLowercase(): Chain;

public function notLuhn(): Chain;
Expand Down
12 changes: 6 additions & 6 deletions library/Mixins/NullOrBuilder.php
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,6 @@ interface NullOrBuilder
{
public static function nullOrAll(Validator $validator): Chain;

public static function nullOrAllOf(
Validator $validator1,
Validator $validator2,
Validator ...$validators,
): Chain;

public static function nullOrAlnum(string ...$additionalChars): Chain;

public static function nullOrAlpha(string ...$additionalChars): Chain;
Expand Down Expand Up @@ -219,6 +213,12 @@ public static function nullOrLessThan(mixed $compareTo): Chain;

public static function nullOrLessThanOrEqual(mixed $compareTo): Chain;

public static function nullOrLogicAnd(
Validator $validator1,
Validator $validator2,
Validator ...$validators,
): Chain;

public static function nullOrLowercase(): Chain;

public static function nullOrLuhn(): Chain;
Expand Down
4 changes: 2 additions & 2 deletions library/Mixins/NullOrChain.php
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,6 @@ interface NullOrChain
{
public function nullOrAll(Validator $validator): Chain;

public function nullOrAllOf(Validator $validator1, Validator $validator2, Validator ...$validators): Chain;

public function nullOrAlnum(string ...$additionalChars): Chain;

public function nullOrAlpha(string ...$additionalChars): Chain;
Expand Down Expand Up @@ -207,6 +205,8 @@ public function nullOrLessThan(mixed $compareTo): Chain;

public function nullOrLessThanOrEqual(mixed $compareTo): Chain;

public function nullOrLogicAnd(Validator $validator1, Validator $validator2, Validator ...$validators): Chain;

public function nullOrLowercase(): Chain;

public function nullOrLuhn(): Chain;
Expand Down
Loading