final class AttributePlan

Compiled validation plan for a single attribute.

Contains pre-resolved flags and the check list (inline + delegated). Immutable after compilation — safe to cache worker-lifetime and share by reference across requests without cloning. Per-request state (like which attributes are excluded) lives on the Validator instance, not here.

Properties

bool $required
bool $nullable
bool $bail
bool $sometimes
SizeMode|null $sizeMode

Pre-resolved from sibling type rules. Null if ambiguous or no type rule present.

bool $hasImplicitRule

Whether any check is an implicit rule (runs even when attribute is absent).

DelegatedCheck|InlineCheck> $checks