reliant-type 2.1.4 → 2.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -0
- package/dist/cjs/core/schema/mode/interfaces/precompilation/FieldPrecompilers.js +86 -55
- package/dist/cjs/core/schema/mode/interfaces/precompilation/FieldPrecompilers.js.map +1 -1
- package/dist/esm/core/schema/mode/interfaces/precompilation/FieldPrecompilers.js +86 -55
- package/dist/esm/core/schema/mode/interfaces/precompilation/FieldPrecompilers.js.map +1 -1
- package/package.json +1 -1
- package/src/core/schema/mode/interfaces/precompilation/FieldPrecompilers.ts +100 -71
package/README.md
CHANGED
|
@@ -277,6 +277,15 @@ When a function defined in a schema is accessed, it is wrapped in a validation p
|
|
|
277
277
|
|
|
278
278
|
This ensures strict contract adherence during execution.
|
|
279
279
|
|
|
280
|
+
### Technical Limitations
|
|
281
|
+
|
|
282
|
+
Due to JavaScript's dynamic nature, some validation aspects are deferred:
|
|
283
|
+
|
|
284
|
+
- **Deferred Execution Validation**: `safeParse` verifies that the field is a function and checks its declared argument count (arity). However, it **cannot** validate the function's internal logic or return value without executing it.
|
|
285
|
+
- _Implication_: A function that returns an invalid type will pass `safeParse`, but will throw an error **when called**.
|
|
286
|
+
- **Side Effects**: To prevent unintended side effects (e.g., database writes), ReliantType never speculatively executes functions during validation.
|
|
287
|
+
- **Spread Operator Arity**: Functions using spread operators (`...args`) have a declared length of 0 in JavaScript. Therefore, ReliantType cannot enforce a minimum argument count at `safeParse` time for these functions; validation occurs strictly at runtime.
|
|
288
|
+
|
|
280
289
|
## Utility Functions
|
|
281
290
|
|
|
282
291
|
Reliant Type provides powerful utility functions for advanced schema definition:
|
|
@@ -579,9 +579,45 @@ class FieldPrecompilers {
|
|
|
579
579
|
}
|
|
580
580
|
/**
|
|
581
581
|
* Precompile function field types (fn(() => void), etc.)
|
|
582
|
-
* ENHANCED:
|
|
582
|
+
* ENHANCED: Parses signature once at compilation time and enforces arity check at validation time.
|
|
583
583
|
*/
|
|
584
584
|
static precompileFunction(functionType) {
|
|
585
|
+
// 1. Static Parsing (Done once)
|
|
586
|
+
const type = functionType.endsWith("?")
|
|
587
|
+
? functionType.slice(0, -1)
|
|
588
|
+
: functionType;
|
|
589
|
+
const signature = type.slice(3, -1); // remove fn( and )
|
|
590
|
+
const arrowIndex = signature.lastIndexOf("=>");
|
|
591
|
+
let argDefs = [];
|
|
592
|
+
let returnPart = "any";
|
|
593
|
+
let minRequiredArgs = 0;
|
|
594
|
+
let hasRest = false;
|
|
595
|
+
if (arrowIndex !== -1) {
|
|
596
|
+
const argsPart = signature.slice(0, arrowIndex).trim();
|
|
597
|
+
returnPart = signature.slice(arrowIndex + 2).trim();
|
|
598
|
+
const cleanArgsPart = argsPart.startsWith("(") && argsPart.endsWith(")")
|
|
599
|
+
? argsPart.slice(1, -1)
|
|
600
|
+
: argsPart;
|
|
601
|
+
if (cleanArgsPart && cleanArgsPart !== "()") {
|
|
602
|
+
argDefs = cleanArgsPart.split(",").map((s) => s.trim());
|
|
603
|
+
// Calculate minimum required arguments
|
|
604
|
+
for (const def of argDefs) {
|
|
605
|
+
const parts = def.split(":");
|
|
606
|
+
const namePart = parts[0].trim();
|
|
607
|
+
let typePart = parts.slice(1).join(":").trim() || "any";
|
|
608
|
+
if (typePart === "TYPE")
|
|
609
|
+
typePart = "any";
|
|
610
|
+
const isRest = namePart.startsWith("...");
|
|
611
|
+
const isOptional = namePart.endsWith("?") || typePart.endsWith("?");
|
|
612
|
+
if (isRest)
|
|
613
|
+
hasRest = true;
|
|
614
|
+
if (!isRest && !isOptional) {
|
|
615
|
+
minRequiredArgs++;
|
|
616
|
+
}
|
|
617
|
+
}
|
|
618
|
+
}
|
|
619
|
+
}
|
|
620
|
+
// 2. Validator (Runs on safeParse)
|
|
585
621
|
const validator = (value) => {
|
|
586
622
|
if (typeof value !== "function") {
|
|
587
623
|
return {
|
|
@@ -591,65 +627,61 @@ class FieldPrecompilers {
|
|
|
591
627
|
data: undefined,
|
|
592
628
|
};
|
|
593
629
|
}
|
|
594
|
-
//
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
630
|
+
// ARITY CHECK: Validate argument count immediately
|
|
631
|
+
// Note: value.length excludes rest parameters and default values
|
|
632
|
+
if (!hasRest && value.length < minRequiredArgs) {
|
|
633
|
+
return {
|
|
634
|
+
success: false,
|
|
635
|
+
errors: [
|
|
636
|
+
{
|
|
637
|
+
message: `Function signature mismatch. Expected at least ${minRequiredArgs} arguments, but received a function with ${value.length}.`,
|
|
638
|
+
path: [],
|
|
639
|
+
code: "INVALID_FUNCTION_ARITY",
|
|
640
|
+
expected: `${minRequiredArgs} arguments`,
|
|
641
|
+
received: `${value.length} arguments`,
|
|
642
|
+
receivedType: "function",
|
|
643
|
+
},
|
|
644
|
+
],
|
|
645
|
+
warnings: [],
|
|
646
|
+
data: undefined,
|
|
647
|
+
};
|
|
602
648
|
}
|
|
603
|
-
const argsPart = signature.slice(0, arrowIndex).trim();
|
|
604
|
-
const returnPart = signature.slice(arrowIndex + 2).trim();
|
|
605
|
-
// Clean argsPart: remove outer parentheses if present
|
|
606
|
-
const cleanArgsPart = argsPart.startsWith("(") && argsPart.endsWith(")")
|
|
607
|
-
? argsPart.slice(1, -1)
|
|
608
|
-
: argsPart;
|
|
609
649
|
// Create a wrapped function that validates on call
|
|
610
650
|
const ReliantFunction = (...args) => {
|
|
611
651
|
// 1. Validate Arguments
|
|
612
|
-
|
|
613
|
-
const
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
const
|
|
633
|
-
|
|
634
|
-
:
|
|
635
|
-
const restArgs = args.slice(i);
|
|
636
|
-
const restValidator = FieldPrecompilers.parseAndCompile(restType);
|
|
637
|
-
for (const restArg of restArgs) {
|
|
638
|
-
const res = restValidator(restArg);
|
|
639
|
-
if (!res.success) {
|
|
640
|
-
throw new Error(`[ReliantType] Argument validation failed for rest parameter at index ${i}: ${res.errors[0].message}`);
|
|
641
|
-
}
|
|
652
|
+
for (let i = 0; i < argDefs.length; i++) {
|
|
653
|
+
const def = argDefs[i];
|
|
654
|
+
const parts = def.split(":");
|
|
655
|
+
const namePart = parts[0].trim();
|
|
656
|
+
let typePart = parts.slice(1).join(":").trim() || "any";
|
|
657
|
+
if (typePart === "TYPE")
|
|
658
|
+
typePart = "any";
|
|
659
|
+
const isRest = namePart.startsWith("...");
|
|
660
|
+
const isOptional = namePart.endsWith("?") || typePart.endsWith("?");
|
|
661
|
+
// Check for missing required arguments
|
|
662
|
+
if (!isRest && !isOptional && i >= args.length) {
|
|
663
|
+
throw new Error(`[ReliantType] Missing required argument at index ${i} ('${namePart}'). Expected ${typePart}.`);
|
|
664
|
+
}
|
|
665
|
+
if (isRest) {
|
|
666
|
+
const restType = typePart.endsWith("[]")
|
|
667
|
+
? typePart.slice(0, -2)
|
|
668
|
+
: typePart;
|
|
669
|
+
const restArgs = args.slice(i);
|
|
670
|
+
const restValidator = FieldPrecompilers.parseAndCompile(restType);
|
|
671
|
+
for (const restArg of restArgs) {
|
|
672
|
+
const res = restValidator(restArg);
|
|
673
|
+
if (!res.success) {
|
|
674
|
+
throw new Error(`[ReliantType] Argument validation failed for rest parameter at index ${i}: ${res.errors[0].message}`);
|
|
642
675
|
}
|
|
643
|
-
break; // Rest is always last
|
|
644
676
|
}
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
}
|
|
677
|
+
break;
|
|
678
|
+
}
|
|
679
|
+
else {
|
|
680
|
+
if (i < args.length) {
|
|
681
|
+
const argValidator = FieldPrecompilers.parseAndCompile(typePart);
|
|
682
|
+
const res = argValidator(args[i]);
|
|
683
|
+
if (!res.success) {
|
|
684
|
+
throw new Error(`[ReliantType] Argument validation failed for argument at index ${i} ('${namePart}'): ${res.errors[0].message}`);
|
|
653
685
|
}
|
|
654
686
|
}
|
|
655
687
|
}
|
|
@@ -658,7 +690,6 @@ class FieldPrecompilers {
|
|
|
658
690
|
const result = value(...args);
|
|
659
691
|
// 3. Validate Return Value
|
|
660
692
|
if (returnPart && returnPart !== "void") {
|
|
661
|
-
// Handle TYPE placeholder as any
|
|
662
693
|
const returnType = returnPart === "TYPE" ? "any" : returnPart;
|
|
663
694
|
if (returnType !== "any") {
|
|
664
695
|
const returnValidator = FieldPrecompilers.parseAndCompile(returnType);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldPrecompilers.js","sources":["../../../../../../../src/core/schema/mode/interfaces/precompilation/FieldPrecompilers.ts"],"sourcesContent":[null],"names":["ValidationHelpers","ErrorHandler","ErrorCode","ConstraintParser"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FieldPrecompilers.js","sources":["../../../../../../../src/core/schema/mode/interfaces/precompilation/FieldPrecompilers.ts"],"sourcesContent":[null],"names":["ValidationHelpers","ErrorHandler","ErrorCode","ConstraintParser"],"mappings":"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"}
|
|
@@ -577,9 +577,45 @@ class FieldPrecompilers {
|
|
|
577
577
|
}
|
|
578
578
|
/**
|
|
579
579
|
* Precompile function field types (fn(() => void), etc.)
|
|
580
|
-
* ENHANCED:
|
|
580
|
+
* ENHANCED: Parses signature once at compilation time and enforces arity check at validation time.
|
|
581
581
|
*/
|
|
582
582
|
static precompileFunction(functionType) {
|
|
583
|
+
// 1. Static Parsing (Done once)
|
|
584
|
+
const type = functionType.endsWith("?")
|
|
585
|
+
? functionType.slice(0, -1)
|
|
586
|
+
: functionType;
|
|
587
|
+
const signature = type.slice(3, -1); // remove fn( and )
|
|
588
|
+
const arrowIndex = signature.lastIndexOf("=>");
|
|
589
|
+
let argDefs = [];
|
|
590
|
+
let returnPart = "any";
|
|
591
|
+
let minRequiredArgs = 0;
|
|
592
|
+
let hasRest = false;
|
|
593
|
+
if (arrowIndex !== -1) {
|
|
594
|
+
const argsPart = signature.slice(0, arrowIndex).trim();
|
|
595
|
+
returnPart = signature.slice(arrowIndex + 2).trim();
|
|
596
|
+
const cleanArgsPart = argsPart.startsWith("(") && argsPart.endsWith(")")
|
|
597
|
+
? argsPart.slice(1, -1)
|
|
598
|
+
: argsPart;
|
|
599
|
+
if (cleanArgsPart && cleanArgsPart !== "()") {
|
|
600
|
+
argDefs = cleanArgsPart.split(",").map((s) => s.trim());
|
|
601
|
+
// Calculate minimum required arguments
|
|
602
|
+
for (const def of argDefs) {
|
|
603
|
+
const parts = def.split(":");
|
|
604
|
+
const namePart = parts[0].trim();
|
|
605
|
+
let typePart = parts.slice(1).join(":").trim() || "any";
|
|
606
|
+
if (typePart === "TYPE")
|
|
607
|
+
typePart = "any";
|
|
608
|
+
const isRest = namePart.startsWith("...");
|
|
609
|
+
const isOptional = namePart.endsWith("?") || typePart.endsWith("?");
|
|
610
|
+
if (isRest)
|
|
611
|
+
hasRest = true;
|
|
612
|
+
if (!isRest && !isOptional) {
|
|
613
|
+
minRequiredArgs++;
|
|
614
|
+
}
|
|
615
|
+
}
|
|
616
|
+
}
|
|
617
|
+
}
|
|
618
|
+
// 2. Validator (Runs on safeParse)
|
|
583
619
|
const validator = (value) => {
|
|
584
620
|
if (typeof value !== "function") {
|
|
585
621
|
return {
|
|
@@ -589,65 +625,61 @@ class FieldPrecompilers {
|
|
|
589
625
|
data: undefined,
|
|
590
626
|
};
|
|
591
627
|
}
|
|
592
|
-
//
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
628
|
+
// ARITY CHECK: Validate argument count immediately
|
|
629
|
+
// Note: value.length excludes rest parameters and default values
|
|
630
|
+
if (!hasRest && value.length < minRequiredArgs) {
|
|
631
|
+
return {
|
|
632
|
+
success: false,
|
|
633
|
+
errors: [
|
|
634
|
+
{
|
|
635
|
+
message: `Function signature mismatch. Expected at least ${minRequiredArgs} arguments, but received a function with ${value.length}.`,
|
|
636
|
+
path: [],
|
|
637
|
+
code: "INVALID_FUNCTION_ARITY",
|
|
638
|
+
expected: `${minRequiredArgs} arguments`,
|
|
639
|
+
received: `${value.length} arguments`,
|
|
640
|
+
receivedType: "function",
|
|
641
|
+
},
|
|
642
|
+
],
|
|
643
|
+
warnings: [],
|
|
644
|
+
data: undefined,
|
|
645
|
+
};
|
|
600
646
|
}
|
|
601
|
-
const argsPart = signature.slice(0, arrowIndex).trim();
|
|
602
|
-
const returnPart = signature.slice(arrowIndex + 2).trim();
|
|
603
|
-
// Clean argsPart: remove outer parentheses if present
|
|
604
|
-
const cleanArgsPart = argsPart.startsWith("(") && argsPart.endsWith(")")
|
|
605
|
-
? argsPart.slice(1, -1)
|
|
606
|
-
: argsPart;
|
|
607
647
|
// Create a wrapped function that validates on call
|
|
608
648
|
const ReliantFunction = (...args) => {
|
|
609
649
|
// 1. Validate Arguments
|
|
610
|
-
|
|
611
|
-
const
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
const
|
|
631
|
-
|
|
632
|
-
:
|
|
633
|
-
const restArgs = args.slice(i);
|
|
634
|
-
const restValidator = FieldPrecompilers.parseAndCompile(restType);
|
|
635
|
-
for (const restArg of restArgs) {
|
|
636
|
-
const res = restValidator(restArg);
|
|
637
|
-
if (!res.success) {
|
|
638
|
-
throw new Error(`[ReliantType] Argument validation failed for rest parameter at index ${i}: ${res.errors[0].message}`);
|
|
639
|
-
}
|
|
650
|
+
for (let i = 0; i < argDefs.length; i++) {
|
|
651
|
+
const def = argDefs[i];
|
|
652
|
+
const parts = def.split(":");
|
|
653
|
+
const namePart = parts[0].trim();
|
|
654
|
+
let typePart = parts.slice(1).join(":").trim() || "any";
|
|
655
|
+
if (typePart === "TYPE")
|
|
656
|
+
typePart = "any";
|
|
657
|
+
const isRest = namePart.startsWith("...");
|
|
658
|
+
const isOptional = namePart.endsWith("?") || typePart.endsWith("?");
|
|
659
|
+
// Check for missing required arguments
|
|
660
|
+
if (!isRest && !isOptional && i >= args.length) {
|
|
661
|
+
throw new Error(`[ReliantType] Missing required argument at index ${i} ('${namePart}'). Expected ${typePart}.`);
|
|
662
|
+
}
|
|
663
|
+
if (isRest) {
|
|
664
|
+
const restType = typePart.endsWith("[]")
|
|
665
|
+
? typePart.slice(0, -2)
|
|
666
|
+
: typePart;
|
|
667
|
+
const restArgs = args.slice(i);
|
|
668
|
+
const restValidator = FieldPrecompilers.parseAndCompile(restType);
|
|
669
|
+
for (const restArg of restArgs) {
|
|
670
|
+
const res = restValidator(restArg);
|
|
671
|
+
if (!res.success) {
|
|
672
|
+
throw new Error(`[ReliantType] Argument validation failed for rest parameter at index ${i}: ${res.errors[0].message}`);
|
|
640
673
|
}
|
|
641
|
-
break; // Rest is always last
|
|
642
674
|
}
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
}
|
|
675
|
+
break;
|
|
676
|
+
}
|
|
677
|
+
else {
|
|
678
|
+
if (i < args.length) {
|
|
679
|
+
const argValidator = FieldPrecompilers.parseAndCompile(typePart);
|
|
680
|
+
const res = argValidator(args[i]);
|
|
681
|
+
if (!res.success) {
|
|
682
|
+
throw new Error(`[ReliantType] Argument validation failed for argument at index ${i} ('${namePart}'): ${res.errors[0].message}`);
|
|
651
683
|
}
|
|
652
684
|
}
|
|
653
685
|
}
|
|
@@ -656,7 +688,6 @@ class FieldPrecompilers {
|
|
|
656
688
|
const result = value(...args);
|
|
657
689
|
// 3. Validate Return Value
|
|
658
690
|
if (returnPart && returnPart !== "void") {
|
|
659
|
-
// Handle TYPE placeholder as any
|
|
660
691
|
const returnType = returnPart === "TYPE" ? "any" : returnPart;
|
|
661
692
|
if (returnType !== "any") {
|
|
662
693
|
const returnValidator = FieldPrecompilers.parseAndCompile(returnType);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldPrecompilers.js","sources":["../../../../../../../src/core/schema/mode/interfaces/precompilation/FieldPrecompilers.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FieldPrecompilers.js","sources":["../../../../../../../src/core/schema/mode/interfaces/precompilation/FieldPrecompilers.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "reliant-type",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.5",
|
|
4
4
|
"description": "A modern TypeScript validation library designed around familiar interface syntax and powerful conditional validation. Experience schema validation that feels natural to TypeScript developers while unlocking advanced runtime validation capabilities.",
|
|
5
5
|
"main": "dist/cjs/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -705,9 +705,52 @@ export class FieldPrecompilers {
|
|
|
705
705
|
|
|
706
706
|
/**
|
|
707
707
|
* Precompile function field types (fn(() => void), etc.)
|
|
708
|
-
* ENHANCED:
|
|
708
|
+
* ENHANCED: Parses signature once at compilation time and enforces arity check at validation time.
|
|
709
709
|
*/
|
|
710
710
|
static precompileFunction(functionType: string): CompiledFieldValidator {
|
|
711
|
+
// 1. Static Parsing (Done once)
|
|
712
|
+
const type = functionType.endsWith("?")
|
|
713
|
+
? functionType.slice(0, -1)
|
|
714
|
+
: functionType;
|
|
715
|
+
const signature = type.slice(3, -1); // remove fn( and )
|
|
716
|
+
const arrowIndex = signature.lastIndexOf("=>");
|
|
717
|
+
|
|
718
|
+
let argDefs: string[] = [];
|
|
719
|
+
let returnPart = "any";
|
|
720
|
+
let minRequiredArgs = 0;
|
|
721
|
+
let hasRest = false;
|
|
722
|
+
|
|
723
|
+
if (arrowIndex !== -1) {
|
|
724
|
+
const argsPart = signature.slice(0, arrowIndex).trim();
|
|
725
|
+
returnPart = signature.slice(arrowIndex + 2).trim();
|
|
726
|
+
|
|
727
|
+
const cleanArgsPart =
|
|
728
|
+
argsPart.startsWith("(") && argsPart.endsWith(")")
|
|
729
|
+
? argsPart.slice(1, -1)
|
|
730
|
+
: argsPart;
|
|
731
|
+
|
|
732
|
+
if (cleanArgsPart && cleanArgsPart !== "()") {
|
|
733
|
+
argDefs = cleanArgsPart.split(",").map((s) => s.trim());
|
|
734
|
+
|
|
735
|
+
// Calculate minimum required arguments
|
|
736
|
+
for (const def of argDefs) {
|
|
737
|
+
const parts = def.split(":");
|
|
738
|
+
const namePart = parts[0].trim();
|
|
739
|
+
let typePart = parts.slice(1).join(":").trim() || "any";
|
|
740
|
+
if (typePart === "TYPE") typePart = "any";
|
|
741
|
+
|
|
742
|
+
const isRest = namePart.startsWith("...");
|
|
743
|
+
const isOptional = namePart.endsWith("?") || typePart.endsWith("?");
|
|
744
|
+
|
|
745
|
+
if (isRest) hasRest = true;
|
|
746
|
+
if (!isRest && !isOptional) {
|
|
747
|
+
minRequiredArgs++;
|
|
748
|
+
}
|
|
749
|
+
}
|
|
750
|
+
}
|
|
751
|
+
}
|
|
752
|
+
|
|
753
|
+
// 2. Validator (Runs on safeParse)
|
|
711
754
|
const validator = (value: any): SchemaValidationResult => {
|
|
712
755
|
if (typeof value !== "function") {
|
|
713
756
|
return {
|
|
@@ -718,80 +761,69 @@ export class FieldPrecompilers {
|
|
|
718
761
|
};
|
|
719
762
|
}
|
|
720
763
|
|
|
721
|
-
//
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
764
|
+
// ARITY CHECK: Validate argument count immediately
|
|
765
|
+
// Note: value.length excludes rest parameters and default values
|
|
766
|
+
if (!hasRest && value.length < minRequiredArgs) {
|
|
767
|
+
return {
|
|
768
|
+
success: false,
|
|
769
|
+
errors: [
|
|
770
|
+
{
|
|
771
|
+
message: `Function signature mismatch. Expected at least ${minRequiredArgs} arguments, but received a function with ${value.length}.`,
|
|
772
|
+
path: [],
|
|
773
|
+
code: "INVALID_FUNCTION_ARITY",
|
|
774
|
+
expected: `${minRequiredArgs} arguments`,
|
|
775
|
+
received: `${value.length} arguments`,
|
|
776
|
+
receivedType: "function",
|
|
777
|
+
},
|
|
778
|
+
],
|
|
779
|
+
warnings: [],
|
|
780
|
+
data: undefined,
|
|
781
|
+
};
|
|
730
782
|
}
|
|
731
783
|
|
|
732
|
-
const argsPart = signature.slice(0, arrowIndex).trim();
|
|
733
|
-
const returnPart = signature.slice(arrowIndex + 2).trim();
|
|
734
|
-
|
|
735
|
-
// Clean argsPart: remove outer parentheses if present
|
|
736
|
-
const cleanArgsPart =
|
|
737
|
-
argsPart.startsWith("(") && argsPart.endsWith(")")
|
|
738
|
-
? argsPart.slice(1, -1)
|
|
739
|
-
: argsPart;
|
|
740
|
-
|
|
741
784
|
// Create a wrapped function that validates on call
|
|
742
785
|
const ReliantFunction = (...args: any[]) => {
|
|
743
786
|
// 1. Validate Arguments
|
|
744
|
-
|
|
745
|
-
const
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
// Check for missing required arguments
|
|
761
|
-
// We check if the index exists in args. explicitly passing undefined is allowed if the type allows it,
|
|
762
|
-
// but not passing it at all is a missing argument error for required params.
|
|
763
|
-
if (!isRest && !isOptional && i >= args.length) {
|
|
764
|
-
throw new Error(
|
|
765
|
-
`[ReliantType] Missing required argument at index ${i} ('${namePart}'). Expected ${typePart}.`
|
|
766
|
-
);
|
|
767
|
-
}
|
|
787
|
+
for (let i = 0; i < argDefs.length; i++) {
|
|
788
|
+
const def = argDefs[i];
|
|
789
|
+
const parts = def.split(":");
|
|
790
|
+
const namePart = parts[0].trim();
|
|
791
|
+
let typePart = parts.slice(1).join(":").trim() || "any";
|
|
792
|
+
if (typePart === "TYPE") typePart = "any";
|
|
793
|
+
|
|
794
|
+
const isRest = namePart.startsWith("...");
|
|
795
|
+
const isOptional = namePart.endsWith("?") || typePart.endsWith("?");
|
|
796
|
+
|
|
797
|
+
// Check for missing required arguments
|
|
798
|
+
if (!isRest && !isOptional && i >= args.length) {
|
|
799
|
+
throw new Error(
|
|
800
|
+
`[ReliantType] Missing required argument at index ${i} ('${namePart}'). Expected ${typePart}.`
|
|
801
|
+
);
|
|
802
|
+
}
|
|
768
803
|
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
}
|
|
804
|
+
if (isRest) {
|
|
805
|
+
const restType = typePart.endsWith("[]")
|
|
806
|
+
? typePart.slice(0, -2)
|
|
807
|
+
: typePart;
|
|
808
|
+
const restArgs = args.slice(i);
|
|
809
|
+
const restValidator = FieldPrecompilers.parseAndCompile(restType);
|
|
810
|
+
for (const restArg of restArgs) {
|
|
811
|
+
const res = restValidator(restArg);
|
|
812
|
+
if (!res.success) {
|
|
813
|
+
throw new Error(
|
|
814
|
+
`[ReliantType] Argument validation failed for rest parameter at index ${i}: ${res.errors[0].message}`
|
|
815
|
+
);
|
|
782
816
|
}
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
);
|
|
794
|
-
}
|
|
817
|
+
}
|
|
818
|
+
break;
|
|
819
|
+
} else {
|
|
820
|
+
if (i < args.length) {
|
|
821
|
+
const argValidator = FieldPrecompilers.parseAndCompile(typePart);
|
|
822
|
+
const res = argValidator(args[i]);
|
|
823
|
+
if (!res.success) {
|
|
824
|
+
throw new Error(
|
|
825
|
+
`[ReliantType] Argument validation failed for argument at index ${i} ('${namePart}'): ${res.errors[0].message}`
|
|
826
|
+
);
|
|
795
827
|
}
|
|
796
828
|
}
|
|
797
829
|
}
|
|
@@ -802,9 +834,7 @@ export class FieldPrecompilers {
|
|
|
802
834
|
|
|
803
835
|
// 3. Validate Return Value
|
|
804
836
|
if (returnPart && returnPart !== "void") {
|
|
805
|
-
// Handle TYPE placeholder as any
|
|
806
837
|
const returnType = returnPart === "TYPE" ? "any" : returnPart;
|
|
807
|
-
|
|
808
838
|
if (returnType !== "any") {
|
|
809
839
|
const returnValidator =
|
|
810
840
|
FieldPrecompilers.parseAndCompile(returnType);
|
|
@@ -816,7 +846,6 @@ export class FieldPrecompilers {
|
|
|
816
846
|
}
|
|
817
847
|
}
|
|
818
848
|
}
|
|
819
|
-
|
|
820
849
|
return result;
|
|
821
850
|
};
|
|
822
851
|
|