typia 3.5.0-dev.20230211 → 3.5.0-dev.20230213

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.
Files changed (65) hide show
  1. package/README.md +7 -0
  2. package/lib/module.d.ts +197 -4
  3. package/lib/module.js +74 -2
  4. package/lib/module.js.map +1 -1
  5. package/lib/programmers/AssertPruneProgrammer.d.ts +5 -0
  6. package/lib/programmers/AssertPruneProgrammer.js +37 -0
  7. package/lib/programmers/AssertPruneProgrammer.js.map +1 -0
  8. package/lib/programmers/CloneProgrammer.d.ts +5 -0
  9. package/lib/programmers/CloneProgrammer.js +287 -0
  10. package/lib/programmers/CloneProgrammer.js.map +1 -0
  11. package/lib/programmers/IsPruneProgrammer.d.ts +5 -0
  12. package/lib/programmers/IsPruneProgrammer.js +37 -0
  13. package/lib/programmers/IsPruneProgrammer.js.map +1 -0
  14. package/lib/programmers/PruneProgrammer.js +2 -2
  15. package/lib/programmers/PruneProgrammer.js.map +1 -1
  16. package/lib/programmers/ValidatePruneProgrammer.d.ts +5 -0
  17. package/lib/programmers/ValidatePruneProgrammer.js +37 -0
  18. package/lib/programmers/ValidatePruneProgrammer.js.map +1 -0
  19. package/lib/programmers/helpers/CloneJoiner.d.ts +8 -0
  20. package/lib/programmers/helpers/CloneJoiner.js +80 -0
  21. package/lib/programmers/helpers/CloneJoiner.js.map +1 -0
  22. package/lib/programmers/internal/feature_object_entries.d.ts +1 -1
  23. package/lib/transformers/CallExpressionTransformer.js +17 -1
  24. package/lib/transformers/CallExpressionTransformer.js.map +1 -1
  25. package/lib/transformers/features/miscellaneous/AssertPruneTransformer.d.ts +5 -0
  26. package/lib/transformers/features/miscellaneous/AssertPruneTransformer.js +23 -0
  27. package/lib/transformers/features/miscellaneous/AssertPruneTransformer.js.map +1 -0
  28. package/lib/transformers/features/miscellaneous/CloneTransformer.d.ts +5 -0
  29. package/lib/transformers/features/miscellaneous/CloneTransformer.js +34 -0
  30. package/lib/transformers/features/miscellaneous/CloneTransformer.js.map +1 -0
  31. package/lib/transformers/features/miscellaneous/CreateAssertPruneTransformer.d.ts +5 -0
  32. package/lib/transformers/features/miscellaneous/CreateAssertPruneTransformer.js +17 -0
  33. package/lib/transformers/features/miscellaneous/CreateAssertPruneTransformer.js.map +1 -0
  34. package/lib/transformers/features/miscellaneous/CreateCloneTransformer.d.ts +5 -0
  35. package/lib/transformers/features/miscellaneous/CreateCloneTransformer.js +17 -0
  36. package/lib/transformers/features/miscellaneous/CreateCloneTransformer.js.map +1 -0
  37. package/lib/transformers/features/miscellaneous/CreateIsPruneTransformer.d.ts +5 -0
  38. package/lib/transformers/features/miscellaneous/CreateIsPruneTransformer.js +17 -0
  39. package/lib/transformers/features/miscellaneous/CreateIsPruneTransformer.js.map +1 -0
  40. package/lib/transformers/features/miscellaneous/CreateValidatePruneTransformer.d.ts +5 -0
  41. package/lib/transformers/features/miscellaneous/CreateValidatePruneTransformer.js +17 -0
  42. package/lib/transformers/features/miscellaneous/CreateValidatePruneTransformer.js.map +1 -0
  43. package/lib/transformers/features/miscellaneous/IsPruneTransformer.d.ts +5 -0
  44. package/lib/transformers/features/miscellaneous/IsPruneTransformer.js +23 -0
  45. package/lib/transformers/features/miscellaneous/IsPruneTransformer.js.map +1 -0
  46. package/lib/transformers/features/miscellaneous/ValidatePruneTransformer.d.ts +5 -0
  47. package/lib/transformers/features/miscellaneous/ValidatePruneTransformer.js +23 -0
  48. package/lib/transformers/features/miscellaneous/ValidatePruneTransformer.js.map +1 -0
  49. package/package.json +1 -1
  50. package/src/module.ts +311 -5
  51. package/src/programmers/AssertPruneProgrammer.ts +59 -0
  52. package/src/programmers/CloneProgrammer.ts +357 -0
  53. package/src/programmers/IsPruneProgrammer.ts +63 -0
  54. package/src/programmers/PruneProgrammer.ts +5 -2
  55. package/src/programmers/ValidatePruneProgrammer.ts +73 -0
  56. package/src/programmers/helpers/CloneJoiner.ts +126 -0
  57. package/src/transformers/CallExpressionTransformer.ts +17 -1
  58. package/src/transformers/features/miscellaneous/AssertPruneTransformer.ts +38 -0
  59. package/src/transformers/features/miscellaneous/CloneTransformer.ts +46 -0
  60. package/src/transformers/features/miscellaneous/CreateAssertPruneTransformer.ts +32 -0
  61. package/src/transformers/features/miscellaneous/CreateCloneTransformer.ts +31 -0
  62. package/src/transformers/features/miscellaneous/CreateIsPruneTransformer.ts +32 -0
  63. package/src/transformers/features/miscellaneous/CreateValidatePruneTransformer.ts +32 -0
  64. package/src/transformers/features/miscellaneous/IsPruneTransformer.ts +38 -0
  65. package/src/transformers/features/miscellaneous/ValidatePruneTransformer.ts +38 -0
package/README.md CHANGED
@@ -22,6 +22,13 @@ export function assertParse<T>(input: string): T; // type safe parser
22
22
  export function assertStringify<T>(input: T): string; // safe and faster
23
23
  // +) isParse, validateParse
24
24
  // +) stringify, isStringify, validateStringify
25
+
26
+ // MISC
27
+ export function random<T>(): T;
28
+ export function clone<T>(input: T): Primitive<T>;
29
+ export function prune<T extends object>(input: T): void;
30
+ // +) isClone, assertClone, validateClone
31
+ // +) isPrune, assertPrune, validatePrune
25
32
  ```
26
33
 
27
34
  `typia` is a transformer library of TypeScript, supporting below features:
package/lib/module.d.ts CHANGED
@@ -1,5 +1,12 @@
1
+ import { $is_between } from "./functional/$is_between";
2
+ import { $is_email } from "./functional/$is_email";
3
+ import { $is_ipv4 } from "./functional/$is_ipv4";
4
+ import { $is_ipv6 } from "./functional/$is_ipv6";
5
+ import { $is_url } from "./functional/$is_url";
6
+ import { $is_uuid } from "./functional/$is_uuid";
1
7
  import { IJsonApplication } from "./schemas/IJsonApplication";
2
8
  import { IValidation } from "./IValidation";
9
+ import { TypeGuardError } from "./TypeGuardError";
3
10
  export * from "./schemas/IJsonApplication";
4
11
  export * from "./schemas/IJsonComponents";
5
12
  export * from "./schemas/IJsonSchema";
@@ -489,8 +496,8 @@ export declare function validateParse<T>(input: string): IValidation<T>;
489
496
  * than the native `JSON.stringify()` function. The 5x faster principle is because
490
497
  * it writes an optimized JSON conversion plan, only for the type `T`.
491
498
  *
492
- * For reference, this `typia.stringify()` does not validate the input value type. It
493
- * just believes that the input value is following the type `T`. Therefore, if you
499
+ * For reference, this `typia.stringify()` does not validate the input value type.
500
+ * It just believes that the input value is following the type `T`. Therefore, if you
494
501
  * can't ensure the input value type, it would be better to call one of below functions
495
502
  * instead.
496
503
  *
@@ -577,7 +584,7 @@ export declare function isStringify<T>(input: T): string | null;
577
584
  * `typia.isStringify()` is a combination function of {@link is} and
578
585
  * {@link stringify}. Therefore, it converts an input value to JSON
579
586
  * (JavaScript Object Notation) string, with type checking.
580
- *
587
+ *f
581
588
  * In such reason, when `input` value is not matched with the type `T`, it returns
582
589
  * `null` value. Otherwise, there's no problem on the `input` value, JSON string would
583
590
  * be returned.
@@ -639,6 +646,16 @@ export declare function validateStringify<T>(input: T): IValidation<string>;
639
646
  * @author Jeongho Nam - https://github.com/samchon
640
647
  */
641
648
  export declare function validateStringify<T>(input: unknown): IValidation<string>;
649
+ export declare function clone<T>(input: T): T;
650
+ export declare namespace clone {
651
+ const is_uuid: typeof $is_uuid;
652
+ const is_email: typeof $is_email;
653
+ const is_url: typeof $is_url;
654
+ const is_ipv4: typeof $is_ipv4;
655
+ const is_ipv6: typeof $is_ipv6;
656
+ const is_between: typeof $is_between;
657
+ function throws(props: Pick<TypeGuardError.IProps, "expected" | "value">): void;
658
+ }
642
659
  /**
643
660
  * Prune, erase superfluous properties.
644
661
  *
@@ -646,12 +663,129 @@ export declare function validateStringify<T>(input: unknown): IValidation<string
646
663
  * objects. Note that, as every superfluous properties would be deleted, you never can
647
664
  * read those superfluous properties after calling this `prune()` function.
648
665
  *
666
+ * For reference, this `typia.prune()` function does not validate the input value type.
667
+ * It just believes that the input value is following the type `T`. Therefore, if you
668
+ * can't ensure the input value type, it would better to call one of below functions
669
+ * instead.
670
+ *
671
+ * - {@link assertPrune}
672
+ * - {@link isPrune}
673
+ * - {@link validatePrune}
674
+ *
649
675
  * @template T Type of the input value
650
- * @param input target instance to prune
676
+ * @param input Target instance to prune
651
677
  *
652
678
  * @author Jeongho Nam - https://github.com/samchon
653
679
  */
654
680
  export declare function prune<T extends object>(input: T): void;
681
+ /**
682
+ * Prune, erase superfluous properties, with type assertion.
683
+ *
684
+ * `typia.assertPrune()` is a combination function of {@link assert} and {@link prune}.
685
+ * Therefore, it removes every superfluous properties from the `input` object including
686
+ * nested objects, with type assertion.
687
+ *
688
+ * In such reason, when `input` value is not matched with the type `T`, it throws an
689
+ * {@link TypeGuardError}. Otherwise, there's no problem on the `input` value, its
690
+ * every superfluous properties would be removed, including nested objects.
691
+ *
692
+ * @template T Type of the input value
693
+ * @param input Target instance to assert and prune
694
+ *
695
+ * @author Jeongho Nam - https://github.com/samchon
696
+ */
697
+ export declare function assertPrune<T>(input: T): T;
698
+ /**
699
+ * Prune, erase superfluous properties, with type assertion.
700
+ *
701
+ * `typia.assertPrune()` is a combination function of {@link assert} and {@link prune}.
702
+ * Therefore, it removes every superfluous properties from the `input` object including
703
+ * nested objects, with type assertion.
704
+ *
705
+ * In such reason, when `input` value is not matched with the type `T`, it throws an
706
+ * {@link TypeGuardError}. Otherwise, there's no problem on the `input` value, its
707
+ * every superfluous properties would be removed, including nested objects.
708
+ *
709
+ * @template T Type of the input value
710
+ * @param input Target instance to assert and prune
711
+ *
712
+ * @author Jeongho Nam - https://github.com/samchon
713
+ */
714
+ export declare function assertPrune<T>(input: unknown): T;
715
+ /**
716
+ * Prune, erase superfluous properties, with type checking.
717
+ *
718
+ * `typia.assertPrune()` is a combination function of {@link is} and {@link prune}.
719
+ * Therefore, it removes every superfluous properties from the `input` object including
720
+ * nested objects, with type checking.
721
+ *
722
+ * In such reason, when `input` value is not matched with the type `T`, it returns
723
+ * `false` value. Otherwise, there's no problem on the `input` value, it returns
724
+ * `true` after removing every superfluous properties, including nested objects.
725
+ *
726
+ * @template T Type of the input value
727
+ * @param input Target instance to check and prune
728
+ * @returns Whether the parametric value is following the type `T` or not
729
+ *
730
+ * @author Jeongho Nam - https://github.com/samchon
731
+ */
732
+ export declare function isPrune<T>(input: T): input is T;
733
+ /**
734
+ * Prune, erase superfluous properties, with type checking.
735
+ *
736
+ * `typia.assertPrune()` is a combination function of {@link is} and {@link prune}.
737
+ * Therefore, it removes every superfluous properties from the `input` object including
738
+ * nested objects, with type checking.
739
+ *
740
+ * In such reason, when `input` value is not matched with the type `T`, it returns
741
+ * `false` value. Otherwise, there's no problem on the `input` value, it returns
742
+ * `true` after removing every superfluous properties, including nested objects.
743
+ *
744
+ * @template T Type of the input value
745
+ * @param input Target instance to check and prune
746
+ * @returns Whether the parametric value is following the type `T` or not
747
+ *
748
+ * @author Jeongho Nam - https://github.com/samchon
749
+ */
750
+ export declare function isPrune<T>(input: unknown): input is T;
751
+ /**
752
+ * Prune, erase superfluous properties, with type validation.
753
+ *
754
+ * `typia.validatePrune()` is a combination function of {@link validate} and {@link prune}.
755
+ * Therefore, it removes every superfluous properties from the `input` object including
756
+ * nested objects, with type validation.
757
+ *
758
+ * In such reason, when `input` value is not matched with the type `T`, it returns
759
+ * {@link IValidation.IFailure} value with detailed error reasons. Otherwise, there's
760
+ * no problem on the `input` value, it returns {@link IValidation.ISucess} value after
761
+ * removing every superfluous properties, including nested objects.
762
+ *
763
+ * @template T Type of the input value
764
+ * @param input Target instance to validate and prune
765
+ * @returns Validation result
766
+ *
767
+ * @author Jeongho Nam - https://github.com/samchon
768
+ */
769
+ export declare function validatePrune<T>(input: T): IValidation<T>;
770
+ /**
771
+ * Prune, erase superfluous properties, with type validation.
772
+ *
773
+ * `typia.validatePrune()` is a combination function of {@link validate} and {@link prune}.
774
+ * Therefore, it removes every superfluous properties from the `input` object including
775
+ * nested objects, with type validation.
776
+ *
777
+ * In such reason, when `input` value is not matched with the type `T`, it returns
778
+ * {@link IValidation.IFailure} value with detailed error reasons. Otherwise, there's
779
+ * no problem on the `input` value, it returns {@link IValidation.ISucess} value after
780
+ * removing every superfluous properties, including nested objects.
781
+ *
782
+ * @template T Type of the input value
783
+ * @param input Target instance to validate and prune
784
+ * @returns Validation result
785
+ *
786
+ * @author Jeongho Nam - https://github.com/samchon
787
+ */
788
+ export declare function validatePrune<T>(input: unknown): IValidation<T>;
655
789
  /**
656
790
  * Creates a reusable {@link assert} function.
657
791
  *
@@ -924,6 +1058,8 @@ export declare function createValidateStringify(): never;
924
1058
  * @author Jeongho Nam - https://github.com/samchon
925
1059
  */
926
1060
  export declare function createValidateStringify<T>(): (input: unknown) => IValidation<string>;
1061
+ export declare function createClone(): never;
1062
+ export declare function createClone<T>(): (input: T) => T;
927
1063
  /**
928
1064
  * Creates a reusable {@link prune} function.
929
1065
  *
@@ -943,3 +1079,60 @@ export declare function createPrune(): never;
943
1079
  * @author Jeongho Nam - https://github.com/samchon
944
1080
  */
945
1081
  export declare function createPrune<T extends object>(): (input: T) => void;
1082
+ /**
1083
+ * Creates a reusable {@link isPrune} function.
1084
+ *
1085
+ * @danger You have to specify the generic argument `T`
1086
+ * @return Nothing until specifying the generic argument `T`
1087
+ * @throws compile error
1088
+ *
1089
+ * @author Jeongho Nam - https://github.com/samchon
1090
+ */
1091
+ export declare function createAssertPrune(): never;
1092
+ /**
1093
+ * Creates a resuable {@link isPrune} function.
1094
+ *
1095
+ * @template T Type of the input value
1096
+ * @returns A reusable `isPrune` function
1097
+ *
1098
+ * @author Jeongho Nam - https://github.com/samchon
1099
+ */
1100
+ export declare function createAssertPrune<T extends object>(): (input: T) => T;
1101
+ /**
1102
+ * Creates a reusable {@link isPrune} function.
1103
+ *
1104
+ * @danger You have to specify the generic argument `T`
1105
+ * @return Nothing until specifying the generic argument `T`
1106
+ * @throws compile error
1107
+ *
1108
+ * @author Jeongho Nam - https://github.com/samchon
1109
+ */
1110
+ export declare function createIsPrune(): never;
1111
+ /**
1112
+ * Creates a resuable {@link isPrune} function.
1113
+ *
1114
+ * @template T Type of the input value
1115
+ * @returns A reusable `isPrune` function
1116
+ *
1117
+ * @author Jeongho Nam - https://github.com/samchon
1118
+ */
1119
+ export declare function createIsPrune<T extends object>(): (input: T) => input is T;
1120
+ /**
1121
+ * Creates a reusable {@link validatePrune} function.
1122
+ *
1123
+ * @danger You have to specify the generic argument `T`
1124
+ * @return Nothing until specifying the generic argument `T`
1125
+ * @throws compile error
1126
+ *
1127
+ * @author Jeongho Nam - https://github.com/samchon
1128
+ */
1129
+ export declare function createValidatePrune(): never;
1130
+ /**
1131
+ * Creates a resuable {@link validatePrune} function.
1132
+ *
1133
+ * @template T Type of the input value
1134
+ * @returns A reusable `validatePrune` function
1135
+ *
1136
+ * @author Jeongho Nam - https://github.com/samchon
1137
+ */
1138
+ export declare function createValidatePrune<T extends object>(): (input: T) => IValidation<T>;
package/lib/module.js CHANGED
@@ -25,7 +25,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
25
25
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
26
26
  };
27
27
  Object.defineProperty(exports, "__esModule", { value: true });
28
- exports.createPrune = exports.createValidateStringify = exports.createIsStringify = exports.createAssertStringify = exports.createStringify = exports.createValidateParse = exports.createAssertParse = exports.createIsParse = exports.createValidateEquals = exports.createEquals = exports.createAssertEquals = exports.createValidate = exports.createIs = exports.createAssertType = exports.createAssert = exports.prune = exports.metadata = exports.validateStringify = exports.isStringify = exports.assertStringify = exports.stringify = exports.validateParse = exports.isParse = exports.assertParse = exports.application = exports.validateEquals = exports.equals = exports.assertEquals = exports.validate = exports.is = exports.assertType = exports.assert = void 0;
28
+ exports.createValidatePrune = exports.createIsPrune = exports.createAssertPrune = exports.createPrune = exports.createClone = exports.createValidateStringify = exports.createIsStringify = exports.createAssertStringify = exports.createStringify = exports.createValidateParse = exports.createAssertParse = exports.createIsParse = exports.createValidateEquals = exports.createEquals = exports.createAssertEquals = exports.createValidate = exports.createIs = exports.createAssertType = exports.createAssert = exports.validatePrune = exports.isPrune = exports.assertPrune = exports.prune = exports.clone = exports.metadata = exports.validateStringify = exports.isStringify = exports.assertStringify = exports.stringify = exports.validateParse = exports.isParse = exports.assertParse = exports.application = exports.validateEquals = exports.equals = exports.assertEquals = exports.validate = exports.is = exports.assertType = exports.assert = void 0;
29
29
  var _every_1 = require("./functional/$every");
30
30
  var _guard_1 = require("./functional/$guard");
31
31
  var _is_between_1 = require("./functional/$is_between");
@@ -283,6 +283,22 @@ function metadata() {
283
283
  halt("metadata");
284
284
  }
285
285
  exports.metadata = metadata;
286
+ function clone() {
287
+ halt("clone");
288
+ }
289
+ exports.clone = clone;
290
+ (function (clone) {
291
+ clone.is_uuid = _is_uuid_1.$is_uuid;
292
+ clone.is_email = _is_email_1.$is_email;
293
+ clone.is_url = _is_url_1.$is_url;
294
+ clone.is_ipv4 = _is_ipv4_1.$is_ipv4;
295
+ clone.is_ipv6 = _is_ipv6_1.$is_ipv6;
296
+ clone.is_between = _is_between_1.$is_between;
297
+ function throws(props) {
298
+ throw new TypeGuardError_1.TypeGuardError(__assign(__assign({}, props), { method: "typia.clone" }));
299
+ }
300
+ clone.throws = throws;
301
+ })(clone = exports.clone || (exports.clone = {}));
286
302
  function prune() {
287
303
  halt("prune");
288
304
  }
@@ -294,12 +310,48 @@ exports.prune = prune;
294
310
  prune.is_ipv4 = _is_ipv4_1.$is_ipv4;
295
311
  prune.is_ipv6 = _is_ipv6_1.$is_ipv6;
296
312
  prune.is_between = _is_between_1.$is_between;
297
- prune.rest = _rest_1.$rest;
298
313
  function throws(props) {
299
314
  throw new TypeGuardError_1.TypeGuardError(__assign(__assign({}, props), { method: "typia.prune" }));
300
315
  }
301
316
  prune.throws = throws;
302
317
  })(prune = exports.prune || (exports.prune = {}));
318
+ function assertPrune() {
319
+ halt("assertPrune");
320
+ }
321
+ exports.assertPrune = assertPrune;
322
+ (function (assertPrune) {
323
+ assertPrune.is_uuid = _is_uuid_1.$is_uuid;
324
+ assertPrune.is_email = _is_email_1.$is_email;
325
+ assertPrune.is_url = _is_url_1.$is_url;
326
+ assertPrune.is_ipv4 = _is_ipv4_1.$is_ipv4;
327
+ assertPrune.is_ipv6 = _is_ipv6_1.$is_ipv6;
328
+ assertPrune.is_between = _is_between_1.$is_between;
329
+ assertPrune.join = _join_1.$join;
330
+ assertPrune.every = _every_1.$every;
331
+ assertPrune.guard = (0, _guard_1.$guard)("typia.assertPrune");
332
+ })(assertPrune = exports.assertPrune || (exports.assertPrune = {}));
333
+ function isPrune() {
334
+ halt("isPrune");
335
+ }
336
+ exports.isPrune = isPrune;
337
+ (function (isPrune) {
338
+ isPrune.is_uuid = _is_uuid_1.$is_uuid;
339
+ isPrune.is_email = _is_email_1.$is_email;
340
+ isPrune.is_url = _is_url_1.$is_url;
341
+ isPrune.is_ipv4 = _is_ipv4_1.$is_ipv4;
342
+ isPrune.is_ipv6 = _is_ipv6_1.$is_ipv6;
343
+ isPrune.is_between = _is_between_1.$is_between;
344
+ function throws(props) {
345
+ throw new TypeGuardError_1.TypeGuardError(__assign(__assign({}, props), { method: "typia.prune" }));
346
+ }
347
+ isPrune.throws = throws;
348
+ })(isPrune = exports.isPrune || (exports.isPrune = {}));
349
+ function validatePrune() {
350
+ halt("validatePrune");
351
+ }
352
+ exports.validatePrune = validatePrune;
353
+ Object.assign(validatePrune, prune);
354
+ Object.assign(validatePrune, validate);
303
355
  function createAssert() {
304
356
  halt("createAssert");
305
357
  }
@@ -370,11 +422,31 @@ function createValidateStringify() {
370
422
  }
371
423
  exports.createValidateStringify = createValidateStringify;
372
424
  Object.assign(createValidateStringify, validateStringify);
425
+ function createClone() {
426
+ halt("createClone");
427
+ }
428
+ exports.createClone = createClone;
429
+ Object.assign(createClone, clone);
373
430
  function createPrune() {
374
431
  halt("createPrune");
375
432
  }
376
433
  exports.createPrune = createPrune;
377
434
  Object.assign(createPrune, prune);
435
+ function createAssertPrune() {
436
+ halt("createAssertPrune");
437
+ }
438
+ exports.createAssertPrune = createAssertPrune;
439
+ Object.assign(createAssertPrune, assertPrune);
440
+ function createIsPrune() {
441
+ halt("createIsPrune");
442
+ }
443
+ exports.createIsPrune = createIsPrune;
444
+ Object.assign(createIsPrune, isPrune);
445
+ function createValidatePrune() {
446
+ halt("createValidatePrune");
447
+ }
448
+ exports.createValidatePrune = createValidatePrune;
449
+ Object.assign(createValidatePrune, validatePrune);
378
450
  function halt(name) {
379
451
  throw new Error("Error on typia.".concat(name, "(): no transform has been configured. Configure the \"tsconfig.json\" file following the [README.md#setup](https://github.com/samchon/typia#setup)"));
380
452
  }
package/lib/module.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"module.js","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import ts from "typescript";
2
+ import { IProject } from "../transformers/IProject";
3
+ export declare namespace AssertPruneProgrammer {
4
+ const generate: (project: IProject, modulo: ts.LeftHandSideExpression) => (type: ts.Type) => ts.ArrowFunction;
5
+ }
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.AssertPruneProgrammer = void 0;
18
+ var typescript_1 = __importDefault(require("typescript"));
19
+ var IdentifierFactory_1 = require("../factories/IdentifierFactory");
20
+ var StatementFactory_1 = require("../factories/StatementFactory");
21
+ var AssertProgrammer_1 = require("./AssertProgrammer");
22
+ var PruneProgrammer_1 = require("./PruneProgrammer");
23
+ var AssertPruneProgrammer;
24
+ (function (AssertPruneProgrammer) {
25
+ AssertPruneProgrammer.generate = function (project, modulo) {
26
+ return function (type) {
27
+ return typescript_1.default.factory.createArrowFunction(undefined, undefined, [IdentifierFactory_1.IdentifierFactory.parameter("input")], undefined, undefined, typescript_1.default.factory.createBlock([
28
+ StatementFactory_1.StatementFactory.constant("assert", AssertProgrammer_1.AssertProgrammer.generate(project, modulo)(type)),
29
+ StatementFactory_1.StatementFactory.constant("prune", PruneProgrammer_1.PruneProgrammer.generate(__assign(__assign({}, project), { options: __assign(__assign({}, project.options), { functional: false, numeric: false }) }), modulo)(type)),
30
+ typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("assert"), undefined, [typescript_1.default.factory.createIdentifier("input")])),
31
+ typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("prune"), undefined, [typescript_1.default.factory.createIdentifier("input")])),
32
+ typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createIdentifier("input")),
33
+ ]));
34
+ };
35
+ };
36
+ })(AssertPruneProgrammer = exports.AssertPruneProgrammer || (exports.AssertPruneProgrammer = {}));
37
+ //# sourceMappingURL=AssertPruneProgrammer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AssertPruneProgrammer.js","sourceRoot":"","sources":["../../src/programmers/AssertPruneProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,oEAAmE;AACnE,kEAAiE;AAIjE,uDAAsD;AACtD,qDAAoD;AAEpD,IAAiB,qBAAqB,CAgDrC;AAhDD,WAAiB,qBAAqB;IACrB,8BAAQ,GACjB,UAAC,OAAiB,EAAE,MAAiC;QACrD,OAAA,UAAC,IAAa;YACV,OAAA,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC1B,SAAS,EACT,SAAS,EACT,CAAC,qCAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EACtC,SAAS,EACT,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;gBACnB,mCAAgB,CAAC,QAAQ,CACrB,QAAQ,EACR,mCAAgB,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CACnD;gBACD,mCAAgB,CAAC,QAAQ,CACrB,OAAO,EACP,iCAAe,CAAC,QAAQ,uBAEb,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,QAGtB,MAAM,CACT,CAAC,IAAI,CAAC,CACV;gBACD,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAChC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EACrC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAChC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACpC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC5B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CACvC;aACJ,CAAC,CACL;QA3CD,CA2CC;IA5CL,CA4CK,CAAC;AACd,CAAC,EAhDgB,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAgDrC"}
@@ -0,0 +1,5 @@
1
+ import ts from "typescript";
2
+ import { IProject } from "../transformers/IProject";
3
+ export declare namespace CloneProgrammer {
4
+ function generate(project: IProject, modulo: ts.LeftHandSideExpression): (type: ts.Type) => ts.ArrowFunction;
5
+ }