class ClosureValidator implements ValidatorInterface (View source)

A generic validator cabable of describing itself and validating mixed values using closures.

Properties

protected Closure $validator_closure

The closure that handles validation.

protected Closure $requirements_closure

The closure that returns requirements.

Methods

__construct(Closure $validator_closure, Closure $requirements_closure)

ClosureValidator constructor.

setValidatorClosure(Closure $validator_closure)

Set the closure that handles validation.

setRequirementsClosure(Closure $requirements_closure)

Set the closure that returns requirements.

string[]
getRequirementStrings()

Get the validator requirements in the form of an array keyed by it's respective error code.

bool
isValid(mixed $mixed, ArrayAccess $error = null)

Is this mixed value valid.

Details

__construct(Closure $validator_closure, Closure $requirements_closure)

ClosureValidator constructor.

Parameters

Closure $validator_closure

function(ClosureValidator $validator, mixed $passed, \Concrete\Core\Error $error = null): bool

Closure $requirements_closure

function(ClosureValidator $validator): array

Examples

setValidatorClosure(Closure $validator_closure)

Set the closure that handles validation.

Parameters

Closure $validator_closure

Examples

function(ClosureValidator $validator, mixed $passed, \Concrete\Core\Error $error = null): bool

setRequirementsClosure(Closure $requirements_closure)

Set the closure that returns requirements.

Parameters

Closure $requirements_closure

Examples

function(ClosureValidator $validator): array

string[] getRequirementStrings()

Get the validator requirements in the form of an array keyed by it's respective error code.

Return Value

string[]

See also

ValidatorInterface::getRequirementStrings

bool isValid(mixed $mixed, ArrayAccess $error = null)

Is this mixed value valid.

Parameters

mixed $mixed

Can be any value

ArrayAccess $error

Return Value

bool

Exceptions

InvalidArgumentException

See also

ValidatorInterface::isValid