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;