generateRefinementCall()
generateRefinementCall<
T>(varName,refinement,ctx,index?,options?):CodeGenResult
Experimental
Generates code to call a single refinement function.
The refinement is stored as an external function and called via
externals.get("ref_N")(value). The result is checked and if it's
not true, the error message is returned.
Type Parametersβ
T: Tβ
Parametersβ
varName: stringβ
The variable name to validate
refinement: RefinementFn<T>β
The refinement function to call
ctx: GeneratorContextβ
The generator context
index?: numberβ
Optional index for debugging (refinement order)
options?: RefinementOptionsβ
Optional configuration for code generation
Returns: CodeGenResultβ
Generated code and updated context
Sinceβ
2.0.0
Exampleβ
const isValidSlug = (value: string) => /^[a-z0-9-]+$/.test(value) || "Invalid slug";
const result = generateRefinementCall("value", isValidSlug, ctx);
// Generated code:
// var ref_result_0 = externals.get("ref_0")(value);
// if (ref_result_0 !== true) return ref_result_0;