Aller au contenu principal

generateRefinementsValidation()

generateRefinementsValidation<T>(varName, refinements, ctx, options?): object

Experimental

Generates code to call multiple refinement functions in order.

Refinements are called sequentially in the order they were defined. If any refinement returns an error, validation stops and the error is returned.


Type Parameters

T: T


Parameters

varName: string

The variable name to validate

refinements: readonly RefinementFn<T>[]

Array of refinement functions to call

ctx: GeneratorContext

The generator context

options?: RefinementOptions

Optional configuration for code generation


Returns: object

Generated code lines and updated context

code: string[]

ctx: GeneratorContext


Since

2.0.0


Example

const refinements = [
(v: string) => v.length > 0 || "Cannot be empty",
(v: string) => /^[a-z]+$/.test(v) || "Must be lowercase"
];
const result = generateRefinementsValidation("value", refinements, ctx);
// Generated code calls each refinement in order