typia 5.5.0-dev.20240303 → 5.5.0-dev.20240303-3

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 (20) hide show
  1. package/lib/programmers/functional/FunctionalAssertFunctionProgrammer.d.ts +1 -1
  2. package/lib/programmers/functional/FunctionalAssertFunctionProgrammer.js +2 -2
  3. package/lib/programmers/functional/FunctionalAssertFunctionProgrammer.js.map +1 -1
  4. package/lib/programmers/functional/FunctionalAssertParametersProgrammer.d.ts +1 -1
  5. package/lib/programmers/functional/FunctionalAssertParametersProgrammer.js +2 -2
  6. package/lib/programmers/functional/FunctionalAssertParametersProgrammer.js.map +1 -1
  7. package/lib/programmers/functional/FunctionalAssertReturnProgrammer.d.ts +1 -1
  8. package/lib/programmers/functional/FunctionalAssertReturnProgrammer.js +2 -2
  9. package/lib/programmers/functional/FunctionalAssertReturnProgrammer.js.map +1 -1
  10. package/lib/transformers/CallExpressionTransformer.d.ts +1 -1
  11. package/lib/transformers/CallExpressionTransformer.js.map +1 -1
  12. package/lib/transformers/features/functional/FunctionalGenericTransformer.d.ts +2 -2
  13. package/lib/transformers/features/functional/FunctionalGenericTransformer.js +33 -5
  14. package/lib/transformers/features/functional/FunctionalGenericTransformer.js.map +1 -1
  15. package/package.json +1 -1
  16. package/src/programmers/functional/FunctionalAssertFunctionProgrammer.ts +3 -4
  17. package/src/programmers/functional/FunctionalAssertParametersProgrammer.ts +3 -4
  18. package/src/programmers/functional/FunctionalAssertReturnProgrammer.ts +3 -4
  19. package/src/transformers/CallExpressionTransformer.ts +5 -9
  20. package/src/transformers/features/functional/FunctionalGenericTransformer.ts +23 -4
@@ -2,5 +2,5 @@
2
2
  import ts from "typescript";
3
3
  import { IProject } from "../../transformers/IProject";
4
4
  export declare namespace FunctionalAssertFunctionProgrammer {
5
- const write: (project: IProject) => (modulo: ts.LeftHandSideExpression) => (equals: boolean) => (expression: ts.Expression, declaration: ts.FunctionDeclaration, init?: ts.Expression) => ts.FunctionDeclaration;
5
+ const write: (project: IProject) => (modulo: ts.LeftHandSideExpression) => (equals: boolean) => (expression: ts.Expression, declaration: ts.FunctionDeclaration, init?: ts.Expression) => ts.ArrowFunction;
6
6
  }
@@ -15,9 +15,9 @@ var FunctionalAssertFunctionProgrammer;
15
15
  return function (expression, declaration, init) {
16
16
  var params = FunctionalAssertParametersProgrammer_1.FunctionalAssertParametersProgrammer.prepare(project)(modulo)(equals)(declaration, init);
17
17
  var output = FunctionalAssertReturnProgrammer_1.FunctionAssertReturnProgrammer.prepare(project)(modulo)(equals)(expression, declaration, init);
18
- return typescript_1.default.factory.createFunctionDeclaration(output.async
18
+ return typescript_1.default.factory.createArrowFunction(output.async
19
19
  ? [typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.AsyncKeyword)]
20
- : undefined, undefined, undefined, undefined, declaration.parameters, declaration.type, typescript_1.default.factory.createBlock([
20
+ : undefined, undefined, declaration.parameters, declaration.type, undefined, typescript_1.default.factory.createBlock([
21
21
  params.assert,
22
22
  output.assert,
23
23
  params.call,
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionalAssertFunctionProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalAssertFunctionProgrammer.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,+FAA8F;AAC9F,uFAAoF;AAEpF,IAAiB,kCAAkC,CAsClD;AAtCD,WAAiB,kCAAkC;IACpC,wCAAK,GAChB,UAAC,OAAiB;QAClB,OAAA,UAAC,MAAiC;YAClC,OAAA,UAAC,MAAe;gBAChB,OAAA,UACE,UAAyB,EACzB,WAAmC,EACnC,IAAoB;oBAEpB,IAAM,MAAM,GAAG,2EAAoC,CAAC,OAAO,CAAC,OAAO,CAAC,CAClE,MAAM,CACP,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;oBAC7B,IAAM,MAAM,GAAG,iEAA8B,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CACpE,MAAM,CACP,CAAC,UAAU,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;oBACjC,OAAO,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CACzC,MAAM,CAAC,KAAK;wBACV,CAAC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,cAAc,CAAC,oBAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;wBACzD,CAAC,CAAC,SAAS,EACb,SAAS,EACT,SAAS,EACT,SAAS,EACT,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,IAAI,EAChB,oBAAE,CAAC,OAAO,CAAC,WAAW,CACpB;wBACE,MAAM,CAAC,MAAM;wBACb,MAAM,CAAC,MAAM;wBACb,MAAM,CAAC,IAAI;wBACX,MAAM,CAAC,QAAQ;wBACf,MAAM,CAAC,IAAI;wBACX,MAAM,CAAC,OAAO;qBACf,EACD,IAAI,CACL,CACF,CAAC;gBACJ,CAAC;YAhCD,CAgCC;QAjCD,CAiCC;IAlCD,CAkCC,CAAC;AACN,CAAC,EAtCgB,kCAAkC,kDAAlC,kCAAkC,QAsClD"}
1
+ {"version":3,"file":"FunctionalAssertFunctionProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalAssertFunctionProgrammer.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,+FAA8F;AAC9F,uFAAoF;AAEpF,IAAiB,kCAAkC,CAqClD;AArCD,WAAiB,kCAAkC;IACpC,wCAAK,GAChB,UAAC,OAAiB;QAClB,OAAA,UAAC,MAAiC;YAClC,OAAA,UAAC,MAAe;gBAChB,OAAA,UACE,UAAyB,EACzB,WAAmC,EACnC,IAAoB;oBAEpB,IAAM,MAAM,GAAG,2EAAoC,CAAC,OAAO,CAAC,OAAO,CAAC,CAClE,MAAM,CACP,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;oBAC7B,IAAM,MAAM,GAAG,iEAA8B,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CACpE,MAAM,CACP,CAAC,UAAU,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;oBACjC,OAAO,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CACnC,MAAM,CAAC,KAAK;wBACV,CAAC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,cAAc,CAAC,oBAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;wBACzD,CAAC,CAAC,SAAS,EACb,SAAS,EACT,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,IAAI,EAChB,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CACpB;wBACE,MAAM,CAAC,MAAM;wBACb,MAAM,CAAC,MAAM;wBACb,MAAM,CAAC,IAAI;wBACX,MAAM,CAAC,QAAQ;wBACf,MAAM,CAAC,IAAI;wBACX,MAAM,CAAC,OAAO;qBACf,EACD,IAAI,CACL,CACF,CAAC;gBACJ,CAAC;YA/BD,CA+BC;QAhCD,CAgCC;IAjCD,CAiCC,CAAC;AACN,CAAC,EArCgB,kCAAkC,kDAAlC,kCAAkC,QAqClD"}
@@ -2,7 +2,7 @@
2
2
  import ts from "typescript";
3
3
  import { IProject } from "../../transformers/IProject";
4
4
  export declare namespace FunctionalAssertParametersProgrammer {
5
- const write: (project: IProject) => (modulo: ts.LeftHandSideExpression) => (equals: boolean) => (expression: ts.Expression, declaration: ts.FunctionDeclaration, init?: ts.Expression) => ts.FunctionDeclaration;
5
+ const write: (project: IProject) => (modulo: ts.LeftHandSideExpression) => (equals: boolean) => (expression: ts.Expression, declaration: ts.FunctionDeclaration, init?: ts.Expression) => ts.ArrowFunction;
6
6
  const prepare: (project: IProject) => (modulo: ts.LeftHandSideExpression) => (equals: boolean) => (declaration: ts.FunctionDeclaration, init?: ts.Expression) => {
7
7
  assert: ts.VariableStatement;
8
8
  call: ts.ExpressionStatement;
@@ -20,9 +20,9 @@ var FunctionalAssertParametersProgrammer;
20
20
  var type = project.checker.getTypeFromTypeNode(declaration.type);
21
21
  return type.isTypeParameter() && type.symbol.name === "Promise";
22
22
  })();
23
- return typescript_1.default.factory.createFunctionDeclaration(async
23
+ return typescript_1.default.factory.createArrowFunction(async
24
24
  ? [typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.AsyncKeyword)]
25
- : undefined, undefined, undefined, undefined, declaration.parameters, declaration.type, typescript_1.default.factory.createBlock([
25
+ : undefined, undefined, declaration.parameters, declaration.type, undefined, typescript_1.default.factory.createBlock([
26
26
  assert,
27
27
  call,
28
28
  typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createCallExpression(expression, undefined, declaration.parameters.map(function (p) {
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionalAssertParametersProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalAssertParametersProgrammer.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,qEAAoE;AACpE,wDAAuD;AAEvD,IAAiB,oCAAoC,CA8FpD;AA9FD,WAAiB,oCAAoC;IACtC,0CAAK,GAChB,UAAC,OAAiB;QAClB,OAAA,UAAC,MAAiC;YAClC,OAAA,UAAC,MAAe;gBAChB,OAAA,UACE,UAAyB,EACzB,WAAmC,EACnC,IAAoB;oBAEd,IAAA,KAAmB,qCAAA,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CACvD,WAAW,EACX,IAAI,CACL,EAHO,MAAM,YAAA,EAAE,IAAI,UAGnB,CAAC;oBACF,IAAM,KAAK,GAAY,CAAC;wBACtB,IAAI,WAAW,CAAC,IAAI,KAAK,SAAS;4BAAE,OAAO,KAAK,CAAC;wBACjD,IAAM,IAAI,GAAY,OAAO,CAAC,OAAO,CAAC,mBAAmB,CACvD,WAAW,CAAC,IAAI,CACjB,CAAC;wBACF,OAAO,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC;oBAClE,CAAC,CAAC,EAAE,CAAC;oBAEL,OAAO,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CACzC,KAAK;wBACH,CAAC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,cAAc,CAAC,oBAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;wBACzD,CAAC,CAAC,SAAS,EACb,SAAS,EACT,SAAS,EACT,SAAS,EACT,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,IAAI,EAChB,oBAAE,CAAC,OAAO,CAAC,WAAW,CACpB;wBACE,MAAM;wBACN,IAAI;wBACJ,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC9B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,UAAU,EACV,SAAS,EACT,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,UAAC,CAAC;4BAC3B,OAAA,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;wBAA7C,CAA6C,CAC9C,CACF,CACF;qBACF,EACD,IAAI,CACL,CACF,CAAC;gBACJ,CAAC;YA3CD,CA2CC;QA5CD,CA4CC;IA7CD,CA6CC,CAAC;IAES,4CAAO,GAClB,UAAC,OAAiB;QAClB,OAAA,UAAC,MAAiC;YAClC,OAAA,UAAC,MAAe;gBAChB,OAAA,UAAC,WAAmC,EAAE,IAAoB;oBACxD,IAAM,QAAQ,GAAgB,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAAC;wBAC7D,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAChC,SAAS,EACT,YAAY,EACZ,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAK,EAAP,CAAO,CAAC,CAC3C,CACF;qBACF,CAAC,CAAC;oBACH,IAAM,IAAI,GAAY,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;oBAEpE,IAAM,MAAM,GAAG,mCAAgB,CAAC,QAAQ,CACtC,QAAQ,EACR,mCAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CACvE,CAAC;oBACF,IAAM,IAAI,GAAG,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAC/C,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EACrC,SAAS,EACT;wBACE,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CACtC;4BACE,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CACjC,YAAY,EACZ,oBAAE,CAAC,OAAO,CAAC,4BAA4B,CACrC,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,UAAC,CAAC;gCAC3B,OAAA,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;4BAA7C,CAA6C,CAC9C,CACF,CACF;yBACF,EACD,IAAI,CACL;qBACF,CACF,CACF,CAAC;oBACF,OAAO,EAAE,MAAM,QAAA,EAAE,IAAI,MAAA,EAAE,IAAI,MAAA,EAAE,CAAC;gBAChC,CAAC;YAvCD,CAuCC;QAxCD,CAwCC;IAzCD,CAyCC,CAAC;AACN,CAAC,EA9FgB,oCAAoC,oDAApC,oCAAoC,QA8FpD"}
1
+ {"version":3,"file":"FunctionalAssertParametersProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalAssertParametersProgrammer.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  import ts from "typescript";
3
3
  import { IProject } from "../../transformers/IProject";
4
4
  export declare namespace FunctionAssertReturnProgrammer {
5
- const write: (project: IProject) => (modulo: ts.LeftHandSideExpression) => (equals: boolean) => (expression: ts.Expression, declaration: ts.FunctionDeclaration, init?: ts.Expression) => ts.FunctionDeclaration;
5
+ const write: (project: IProject) => (modulo: ts.LeftHandSideExpression) => (equals: boolean) => (expression: ts.Expression, declaration: ts.FunctionDeclaration, init?: ts.Expression) => ts.ArrowFunction;
6
6
  const prepare: (project: IProject) => (modulo: ts.LeftHandSideExpression) => (equals: boolean) => (expression: ts.Expression, declaration: ts.FunctionDeclaration, init?: ts.Expression) => {
7
7
  async: boolean;
8
8
  type: ts.Type;
@@ -30,9 +30,9 @@ var FunctionAssertReturnProgrammer;
30
30
  return function (equals) {
31
31
  return function (expression, declaration, init) {
32
32
  var _a = FunctionAssertReturnProgrammer.prepare(project)(modulo)(equals)(expression, declaration, init), async = _a.async, assert = _a.assert, variable = _a.variable, call = _a.call, returns = _a.returns;
33
- return typescript_1.default.factory.createFunctionDeclaration(async
33
+ return typescript_1.default.factory.createArrowFunction(async
34
34
  ? [typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.AsyncKeyword)]
35
- : undefined, undefined, undefined, undefined, declaration.parameters, declaration.type, typescript_1.default.factory.createBlock([assert, variable, call, returns], true));
35
+ : undefined, undefined, declaration.parameters, declaration.type, undefined, typescript_1.default.factory.createBlock([assert, variable, call, returns], true));
36
36
  };
37
37
  };
38
38
  };
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionalAssertReturnProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalAssertReturnProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FunctionalAssertReturnProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalAssertReturnProgrammer.ts"],"names":[],"mappings":"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"}
@@ -2,5 +2,5 @@
2
2
  import ts from "typescript";
3
3
  import { IProject } from "./IProject";
4
4
  export declare namespace CallExpressionTransformer {
5
- const transform: (project: IProject) => (expression: ts.CallExpression) => ts.Expression | ts.FunctionDeclaration | null;
5
+ const transform: (project: IProject) => (expression: ts.CallExpression) => ts.Expression | null;
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CallExpressionTransformer.js","sourceRoot":"","sources":["../../src/transformers/CallExpressionTransformer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CallExpressionTransformer.js","sourceRoot":"","sources":["../../src/transformers/CallExpressionTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAwB;AAGxB,8DAA6D;AAG7D,kEAAiE;AACjE,8EAA6E;AAC7E,sEAAqE;AACrE,8EAA6E;AAC7E,kFAAiF;AACjF,0DAAyD;AACzD,kEAAiE;AACjE,sEAAqE;AACrE,yGAAwG;AACxG,qGAAoG;AACpG,6FAA4F;AAC5F,iGAAgG;AAChG,6FAA4F;AAC5F,iGAAgG;AAChG,yFAAwF;AACxF,6GAA4G;AAC5G,yGAAwG;AACxG,6FAA4F;AAC5F,yFAAwF;AACxF,iFAAgF;AAChF,qFAAoF;AACpF,iFAAgF;AAChF,qFAAoF;AACpF,6EAA4E;AAC5E,iGAAgG;AAChG,6FAA4F;AAC5F,yFAAwF;AACxF,yFAAwF;AACxF,iGAAgG;AAChG,qGAAoG;AACpG,6GAA4G;AAC5G,6FAA4F;AAC5F,qGAAoG;AACpG,iGAAgG;AAChG,yGAAwG;AACxG,+GAA+G;AAC/G,iFAAgF;AAChF,yFAAwF;AACxF,qFAAoF;AACpF,6FAA4F;AAC5F,qGAAoG;AACpG,yFAAwF;AACxF,yFAAwF;AACxF,6EAA4E;AAC5E,qGAAoG;AACpG,qGAAoG;AACpG,yFAAwF;AACxF,6FAA4F;AAC5F,6FAA4F;AAC5F,yFAAwF;AACxF,yGAAwG;AACxG,yGAAwG;AACxG,iFAAgF;AAChF,iFAAgF;AAChF,mFAAkF;AAClF,6EAA4E;AAC5E,6FAA4F;AAC5F,6FAA4F;AAC5F,0GAAyG;AACzG,sHAAqH;AACrH,0GAAyG;AACzG,8GAA6G;AAC7G,0HAAyH;AACzH,8FAA6F;AAC7F,kGAAiG;AACjG,8GAA6G;AAC7G,uGAAsG;AACtG,uGAAsG;AACtG,mHAAkH;AAClH,mHAAkH;AAClH,uGAAsG;AACtG,uGAAsG;AACtG,2GAA0G;AAC1G,2GAA0G;AAC1G,uHAAsH;AACtH,uHAAsH;AACtH,2FAA0F;AAC1F,2FAA0F;AAC1F,+FAA8F;AAC9F,+FAA8F;AAC9F,6FAA4F;AAC5F,2GAA0G;AAC1G,2GAA0G;AAC1G,4FAA2F;AAC3F,+FAA8F;AAC9F,mFAAkF;AAClF,uFAAsF;AACtF,mGAAkG;AAClG,2GAA0G;AAC1G,+FAA8F;AAC9F,mGAAkG;AAClG,+GAA8G;AAC9G,mGAAkG;AAClG,mHAAkH;AAClH,uHAAsH;AACtH,+GAA4G;AAE5G,IAAiB,yBAAyB,CA0CzC;AA1CD,WAAiB,yBAAyB;IAC3B,mCAAS,GACpB,UAAC,OAAiB;QAClB,OAAA,UAAC,UAA6B;;YAC5B,MAAM;YACN,cAAc;YACd,MAAM;YACN,wBAAwB;YACxB,IAAM,WAAW,GACf,MAAA,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,UAAU,CAAC,0CAAE,WAAW,CAAC;YAChE,IAAI,CAAC,WAAW;gBAAE,OAAO,UAAU,CAAC;YAEpC,YAAY;YACZ,IAAM,QAAQ,GAAW,cAAI,CAAC,OAAO,CACnC,WAAW,CAAC,aAAa,EAAE,CAAC,QAAQ,CACrC,CAAC;YACF,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,KAAK;gBAAE,OAAO,UAAU,CAAC;YAEpD,MAAM;YACN,iBAAiB;YACjB,MAAM;YACN,gBAAgB;YAChB,IAAM,MAAM,GAAW,QAAQ,CAAC,KAAK,CAAC,cAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;YAC/D,IAAA,IAAI,GAAK,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,MAAM,KAA1D,CAA2D;YAEvE,mBAAmB;YACnB,IAAM,OAAO,GAA6B,MAAA,QAAQ,CAAC,MAAM,CAAC,0CAAG,IAAI,CAAC,CAAC;YACnE,IAAI,OAAO,KAAK,SAAS;gBAAE,OAAO,UAAU,CAAC;YAE7C,8BAA8B;YAC9B,IAAM,MAAM,GAAyB,OAAO,EAAE,CAAC,OAAO,CAAC,CACrD,UAAU,CAAC,UAAU,CACtB,CAAC,UAAU,CAAC,CAAC;YACd,OAAO,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,UAAU,CAAC;QAC9B,CAAC;IA/BD,CA+BC,CAAC;IAEJ,IAAM,QAAQ,GAAG,UAAC,QAAgB;QAChC,IAAM,KAAK,GAAa,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9C,OAAO,KAAK,CAAC,IAAI,CAAC,UAAC,CAAC;YAClB,OAAA,QAAQ,CAAC,QAAQ,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,UAAG,CAAC,UAAO,CAAC,CAAC;QAAzD,CAAyD,CAC1D,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC,EA1CgB,yBAAyB,yCAAzB,yBAAyB,QA0CzC;AAQD,IAAM,QAAQ,GAA+C;IAC3D,MAAM,EAAE;QACN,QAAQ;QACR,MAAM,EAAE,cAAM,OAAA,qCAAiB,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAA5D,CAA4D;QAC1E,WAAW,EAAE;YACX,OAAA,qCAAiB,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAA3D,CAA2D;QAC7D,UAAU,EAAE;YACV,OAAA,qCAAiB,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAA5D,CAA4D;QAC9D,EAAE,EAAE,cAAM,OAAA,6BAAa,CAAC,SAAS,CAAC,KAAK,CAAC,EAA9B,CAA8B;QACxC,QAAQ,EAAE,cAAM,OAAA,yCAAmB,CAAC,SAAS,CAAC,KAAK,CAAC,EAApC,CAAoC;QAEpD,SAAS;QACT,YAAY,EAAE;YACZ,OAAA,qCAAiB,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAA3D,CAA2D;QAC7D,iBAAiB,EAAE;YACjB,OAAA,qCAAiB,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAA1D,CAA0D;QAC5D,MAAM,EAAE,cAAM,OAAA,6BAAa,CAAC,SAAS,CAAC,IAAI,CAAC,EAA7B,CAA6B;QAC3C,cAAc,EAAE,cAAM,OAAA,yCAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAnC,CAAmC;QAEzD,oBAAoB;QACpB,MAAM,EAAE,cAAM,OAAA,qCAAiB,CAAC,SAAS,EAA3B,CAA2B;QACzC,QAAQ,EAAE,cAAM,OAAA,uDAA0B,CAAC,SAAS,EAApC,CAAoC;QAEpD,YAAY;QACZ,YAAY,EAAE;YACZ,OAAA,iDAAuB,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAAlE,CAAkE;QACpE,iBAAiB,EAAE;YACjB,OAAA,iDAAuB,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAAjE,CAAiE;QACnE,gBAAgB,EAAE;YAChB,OAAA,iDAAuB,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAAlE,CAAkE;QACpE,QAAQ,EAAE,cAAM,OAAA,yCAAmB,CAAC,SAAS,CAAC,KAAK,CAAC,EAApC,CAAoC;QACpD,cAAc,EAAE,cAAM,OAAA,qDAAyB,CAAC,SAAS,CAAC,KAAK,CAAC,EAA1C,CAA0C;QAChE,kBAAkB,EAAE;YAClB,OAAA,iDAAuB,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAAjE,CAAiE;QACnE,uBAAuB,EAAE;YACvB,OAAA,iDAAuB,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAAhE,CAAgE;QAClE,YAAY,EAAE,cAAM,OAAA,yCAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAnC,CAAmC;QACvD,oBAAoB,EAAE,cAAM,OAAA,qDAAyB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAzC,CAAyC;QACrE,YAAY,EAAE,cAAM,OAAA,iDAAuB,CAAC,SAAS,EAAjC,CAAiC;KACtD;IACD,UAAU,EAAE;QACV,aAAa;QACb,cAAc,EAAE;YACd,OAAA,2DAA4B,CAAC,SAAS,CAAC;gBACrC,MAAM,EAAE,gBAAgB;gBACxB,MAAM,EAAE,KAAK;gBACb,UAAU,EAAE,uEAAkC,CAAC,KAAK;aACrD,CAAC;QAJF,CAIE;QACJ,gBAAgB,EAAE;YAChB,OAAA,2DAA4B,CAAC,SAAS,CAAC;gBACrC,MAAM,EAAE,kBAAkB;gBAC1B,MAAM,EAAE,KAAK;gBACb,UAAU,EAAE,2EAAoC,CAAC,KAAK;aACvD,CAAC;QAJF,CAIE;QACJ,YAAY,EAAE;YACZ,OAAA,2DAA4B,CAAC,SAAS,CAAC;gBACrC,MAAM,EAAE,cAAc;gBACtB,MAAM,EAAE,KAAK;gBACb,UAAU,EAAE,iEAA8B,CAAC,KAAK;aACjD,CAAC;QAJF,CAIE;QACJ,oBAAoB,EAAE;YACpB,OAAA,2DAA4B,CAAC,SAAS,CAAC;gBACrC,MAAM,EAAE,sBAAsB;gBAC9B,MAAM,EAAE,IAAI;gBACZ,UAAU,EAAE,uEAAkC,CAAC,KAAK;aACrD,CAAC;QAJF,CAIE;QACJ,sBAAsB,EAAE;YACtB,OAAA,2DAA4B,CAAC,SAAS,CAAC;gBACrC,MAAM,EAAE,wBAAwB;gBAChC,MAAM,EAAE,IAAI;gBACZ,UAAU,EAAE,2EAAoC,CAAC,KAAK;aACvD,CAAC;QAJF,CAIE;QACJ,kBAAkB,EAAE;YAClB,OAAA,2DAA4B,CAAC,SAAS,CAAC;gBACrC,MAAM,EAAE,oBAAoB;gBAC5B,MAAM,EAAE,IAAI;gBACZ,UAAU,EAAE,iEAA8B,CAAC,KAAK;aACjD,CAAC;QAJF,CAIE;KACL;IACD,IAAI,EAAE;QACJ,YAAY;QACZ,QAAQ,EAAE,cAAM,OAAA,iDAAuB,CAAC,SAAS,EAAjC,CAAiC;QACjD,UAAU,EAAE,cAAM,OAAA,qDAAyB,CAAC,SAAS,EAAnC,CAAmC;QACrD,cAAc,EAAE,cAAM,OAAA,6DAA6B,CAAC,SAAS,EAAvC,CAAuC;QAC7D,gBAAgB,EAAE,cAAM,OAAA,iEAA+B,CAAC,SAAS,EAAzC,CAAyC;QAEjE,UAAU;QACV,OAAO,EAAE,cAAM,OAAA,+CAAsB,CAAC,SAAS,EAAhC,CAAgC;QAC/C,SAAS,EAAE,cAAM,OAAA,mDAAwB,CAAC,SAAS,EAAlC,CAAkC;QACnD,aAAa,EAAE,cAAM,OAAA,2DAA4B,CAAC,SAAS,EAAtC,CAAsC;QAC3D,eAAe,EAAE,cAAM,OAAA,+DAA8B,CAAC,SAAS,EAAxC,CAAwC;QAE/D,YAAY;QACZ,SAAS,EAAE,cAAM,OAAA,mDAAwB,CAAC,SAAS,EAAlC,CAAkC;QAEnD,QAAQ;QACR,KAAK,EAAE,cAAM,OAAA,2CAAoB,CAAC,SAAS,EAA9B,CAA8B;QAC3C,OAAO,EAAE,cAAM,OAAA,+CAAsB,CAAC,SAAS,EAAhC,CAAgC;QAC/C,WAAW,EAAE,cAAM,OAAA,uDAA0B,CAAC,SAAS,EAApC,CAAoC;QACvD,aAAa,EAAE,cAAM,OAAA,2DAA4B,CAAC,SAAS,EAAtC,CAAsC;QAE3D,YAAY;QACZ,cAAc,EAAE,cAAM,OAAA,6DAA6B,CAAC,SAAS,EAAvC,CAAuC;QAC7D,gBAAgB,EAAE,cAAM,OAAA,iEAA+B,CAAC,SAAS,EAAzC,CAAyC;QACjE,oBAAoB,EAAE,cAAM,OAAA,yEAAmC,CAAC,SAAS,EAA7C,CAA6C;QACzE,sBAAsB,EAAE;YACtB,OAAA,6EAAqC,CAAC,SAAS;QAA/C,CAA+C;QACjD,aAAa,EAAE,cAAM,OAAA,2DAA4B,CAAC,SAAS,EAAtC,CAAsC;QAC3D,eAAe,EAAE,cAAM,OAAA,+DAA8B,CAAC,SAAS,EAAxC,CAAwC;QAC/D,mBAAmB,EAAE,cAAM,OAAA,uEAAkC,CAAC,SAAS,EAA5C,CAA4C;QACvE,qBAAqB,EAAE,cAAM,OAAA,2EAAoC,CAAC,SAAS,EAA9C,CAA8C;QAC3E,eAAe,EAAE,cAAM,OAAA,+DAA8B,CAAC,SAAS,EAAxC,CAAwC;QAC/D,WAAW,EAAE,cAAM,OAAA,uDAA0B,CAAC,SAAS,EAApC,CAAoC;QACvD,aAAa,EAAE,cAAM,OAAA,2DAA4B,CAAC,SAAS,EAAtC,CAAsC;QAC3D,iBAAiB,EAAE,cAAM,OAAA,mEAAgC,CAAC,SAAS,EAA1C,CAA0C;QACnE,mBAAmB,EAAE,cAAM,OAAA,uEAAkC,CAAC,SAAS,EAA5C,CAA4C;KACxE;IACD,IAAI,EAAE;QACJ,SAAS;QACT,WAAW,EAAE,cAAM,OAAA,UAAC,CAAC,IAAK,OAAA,cAAM,OAAA,uDAA0B,CAAC,SAAS,CAAC,CAAC,CAAC,EAAvC,CAAuC,EAA7C,CAA6C,EAApD,CAAoD;QAEvE,SAAS;QACT,OAAO,EAAE,cAAM,OAAA,+CAAsB,CAAC,SAAS,EAAhC,CAAgC;QAC/C,WAAW,EAAE,cAAM,OAAA,uDAA0B,CAAC,SAAS,EAApC,CAAoC;QACvD,aAAa,EAAE,cAAM,OAAA,2DAA4B,CAAC,SAAS,EAAtC,CAAsC;QAE3D,YAAY;QACZ,SAAS,EAAE,cAAM,OAAA,mDAAwB,CAAC,SAAS,EAAlC,CAAkC;QACnD,eAAe,EAAE,cAAM,OAAA,+DAA8B,CAAC,SAAS,EAAxC,CAAwC;QAC/D,WAAW,EAAE,cAAM,OAAA,uDAA0B,CAAC,SAAS,EAApC,CAAoC;QACvD,iBAAiB,EAAE,cAAM,OAAA,mEAAgC,CAAC,SAAS,EAA1C,CAA0C;QAEnE,YAAY;QACZ,aAAa,EAAE,cAAM,OAAA,2DAA4B,CAAC,SAAS,EAAtC,CAAsC;QAC3D,iBAAiB,EAAE,cAAM,OAAA,mEAAgC,CAAC,SAAS,EAA1C,CAA0C;QACnE,mBAAmB,EAAE,cAAM,OAAA,uEAAkC,CAAC,SAAS,EAA5C,CAA4C;QACvE,eAAe,EAAE,cAAM,OAAA,+DAA8B,CAAC,SAAS,EAAxC,CAAwC;QAC/D,qBAAqB,EAAE,cAAM,OAAA,2EAAoC,CAAC,SAAS,EAA9C,CAA8C;QAC3E,iBAAiB,EAAE,cAAM,OAAA,mEAAgC,CAAC,SAAS,EAA1C,CAA0C;QACnE,uBAAuB,EAAE;YACvB,OAAA,8EAAsC,CAAC,SAAS;QAAhD,CAAgD;KACnD;IACD,QAAQ,EAAE;QACR,SAAS;QACT,OAAO,EAAE,cAAM,OAAA,uDAA0B,CAAC,SAAS,EAApC,CAAoC;QAEnD,SAAS;QACT,MAAM,EAAE,cAAM,OAAA,qDAAyB,CAAC,SAAS,EAAnC,CAAmC;QACjD,YAAY,EAAE,cAAM,OAAA,iEAA+B,CAAC,SAAS,EAAzC,CAAyC;QAC7D,QAAQ,EAAE,cAAM,OAAA,yDAA2B,CAAC,SAAS,EAArC,CAAqC;QACrD,cAAc,EAAE,cAAM,OAAA,qEAAiC,CAAC,SAAS,EAA3C,CAA2C;QAEjE,SAAS;QACT,MAAM,EAAE,cAAM,OAAA,qDAAyB,CAAC,SAAS,EAAnC,CAAmC;QACjD,YAAY,EAAE,cAAM,OAAA,iEAA+B,CAAC,SAAS,EAAzC,CAAyC;QAC7D,QAAQ,EAAE,cAAM,OAAA,yDAA2B,CAAC,SAAS,EAArC,CAAqC;QACrD,cAAc,EAAE,cAAM,OAAA,qEAAiC,CAAC,SAAS,EAA3C,CAA2C;QAEjE,YAAY;QACZ,YAAY,EAAE,cAAM,OAAA,iEAA+B,CAAC,SAAS,EAAzC,CAAyC;QAC7D,kBAAkB,EAAE,cAAM,OAAA,6EAAqC,CAAC,SAAS,EAA/C,CAA+C;QACzE,cAAc,EAAE,cAAM,OAAA,qEAAiC,CAAC,SAAS,EAA3C,CAA2C;QACjE,oBAAoB,EAAE;YACpB,OAAA,iFAAuC,CAAC,SAAS;QAAjD,CAAiD;QACnD,YAAY,EAAE,cAAM,OAAA,iEAA+B,CAAC,SAAS,EAAzC,CAAyC;QAC7D,kBAAkB,EAAE,cAAM,OAAA,6EAAqC,CAAC,SAAS,EAA/C,CAA+C;QACzE,cAAc,EAAE,cAAM,OAAA,qEAAiC,CAAC,SAAS,EAA3C,CAA2C;QACjE,oBAAoB,EAAE;YACpB,OAAA,iFAAuC,CAAC,SAAS;QAAjD,CAAiD;KACpD;IACD,OAAO,EAAE;QACP,QAAQ,EAAE,cAAM,OAAA,uDAA0B,CAAC,SAAS,EAApC,CAAoC;KACrD;IACD,IAAI,EAAE;QACJ,QAAQ,EAAE,cAAM,OAAA,UAAC,OAAO,IAAK,OAAA;YAC3B,OAAA,iDAAuB,CAAC,SAAS,CAAC,OAAO,CAAC;QAA1C,CAA0C,EADf,CACe,EAD5B,CAC4B;QAE5C,QAAQ;QACR,KAAK,EAAE,cAAM,OAAA,2CAAoB,CAAC,SAAS,EAA9B,CAA8B;QAC3C,WAAW,EAAE,cAAM,OAAA,uDAA0B,CAAC,SAAS,EAApC,CAAoC;QACvD,OAAO,EAAE,cAAM,OAAA,+CAAsB,CAAC,SAAS,EAAhC,CAAgC;QAC/C,aAAa,EAAE,cAAM,OAAA,2DAA4B,CAAC,SAAS,EAAtC,CAAsC;QAE3D,QAAQ;QACR,KAAK,EAAE,cAAM,OAAA,2CAAoB,CAAC,SAAS,EAA9B,CAA8B;QAC3C,WAAW,EAAE,cAAM,OAAA,uDAA0B,CAAC,SAAS,EAApC,CAAoC;QACvD,OAAO,EAAE,cAAM,OAAA,+CAAsB,CAAC,SAAS,EAAhC,CAAgC;QAC/C,aAAa,EAAE,cAAM,OAAA,2DAA4B,CAAC,SAAS,EAAtC,CAAsC;QAE3D,YAAY;QACZ,WAAW,EAAE,cAAM,OAAA,uDAA0B,CAAC,SAAS,EAApC,CAAoC;QACvD,iBAAiB,EAAE,cAAM,OAAA,mEAAgC,CAAC,SAAS,EAA1C,CAA0C;QACnE,aAAa,EAAE,cAAM,OAAA,2DAA4B,CAAC,SAAS,EAAtC,CAAsC;QAC3D,mBAAmB,EAAE,cAAM,OAAA,uEAAkC,CAAC,SAAS,EAA5C,CAA4C;QACvE,WAAW,EAAE,cAAM,OAAA,uDAA0B,CAAC,SAAS,EAApC,CAAoC;QACvD,iBAAiB,EAAE,cAAM,OAAA,mEAAgC,CAAC,SAAS,EAA1C,CAA0C;QACnE,aAAa,EAAE,cAAM,OAAA,2DAA4B,CAAC,SAAS,EAAtC,CAAsC;QAC3D,mBAAmB,EAAE,cAAM,OAAA,uEAAkC,CAAC,SAAS,EAA5C,CAA4C;KACxE;IACD,SAAS,EAAE;QACT,QAAQ;QACR,KAAK,EAAE,cAAM,OAAA,uDAA0B,CAAC,SAAS,CAAC,mCAAgB,CAAC,KAAK,CAAC,EAA5D,CAA4D;QACzE,WAAW,EAAE;YACX,OAAA,mEAAgC,CAAC,SAAS,CAAC,mCAAgB,CAAC,KAAK,CAAC;QAAlE,CAAkE;QACpE,OAAO,EAAE;YACP,OAAA,2DAA4B,CAAC,SAAS,CAAC,mCAAgB,CAAC,KAAK,CAAC;QAA9D,CAA8D;QAChE,aAAa,EAAE;YACb,OAAA,uEAAkC,CAAC,SAAS,CAAC,mCAAgB,CAAC,KAAK,CAAC;QAApE,CAAoE;QAEtE,SAAS;QACT,MAAM,EAAE,cAAM,OAAA,uDAA0B,CAAC,SAAS,CAAC,mCAAgB,CAAC,MAAM,CAAC,EAA7D,CAA6D;QAC3E,YAAY,EAAE;YACZ,OAAA,mEAAgC,CAAC,SAAS,CAAC,mCAAgB,CAAC,MAAM,CAAC;QAAnE,CAAmE;QACrE,QAAQ,EAAE;YACR,OAAA,2DAA4B,CAAC,SAAS,CAAC,mCAAgB,CAAC,MAAM,CAAC;QAA/D,CAA+D;QACjE,cAAc,EAAE;YACd,OAAA,uEAAkC,CAAC,SAAS,CAAC,mCAAgB,CAAC,MAAM,CAAC;QAArE,CAAqE;QAEvE,QAAQ;QACR,KAAK,EAAE,cAAM,OAAA,uDAA0B,CAAC,SAAS,CAAC,mCAAgB,CAAC,KAAK,CAAC,EAA5D,CAA4D;QACzE,WAAW,EAAE;YACX,OAAA,mEAAgC,CAAC,SAAS,CAAC,mCAAgB,CAAC,KAAK,CAAC;QAAlE,CAAkE;QACpE,OAAO,EAAE;YACP,OAAA,2DAA4B,CAAC,SAAS,CAAC,mCAAgB,CAAC,KAAK,CAAC;QAA9D,CAA8D;QAChE,aAAa,EAAE;YACb,OAAA,uEAAkC,CAAC,SAAS,CAAC,mCAAgB,CAAC,KAAK,CAAC;QAApE,CAAoE;QAEtE,YAAY;QACZ,WAAW,EAAE;YACX,OAAA,mEAAgC,CAAC,SAAS,CAAC,mCAAgB,CAAC,KAAK,CAAC;QAAlE,CAAkE;QACpE,iBAAiB,EAAE;YACjB,OAAA,+EAAsC,CAAC,SAAS,CAAC,mCAAgB,CAAC,KAAK,CAAC;QAAxE,CAAwE;QAC1E,aAAa,EAAE;YACb,OAAA,uEAAkC,CAAC,SAAS,CAAC,mCAAgB,CAAC,KAAK,CAAC;QAApE,CAAoE;QACtE,mBAAmB,EAAE;YACnB,OAAA,mFAAwC,CAAC,SAAS,CAChD,mCAAgB,CAAC,KAAK,CACvB;QAFD,CAEC;QACH,YAAY,EAAE;YACZ,OAAA,mEAAgC,CAAC,SAAS,CAAC,mCAAgB,CAAC,MAAM,CAAC;QAAnE,CAAmE;QACrE,kBAAkB,EAAE;YAClB,OAAA,+EAAsC,CAAC,SAAS,CAAC,mCAAgB,CAAC,MAAM,CAAC;QAAzE,CAAyE;QAC3E,cAAc,EAAE;YACd,OAAA,uEAAkC,CAAC,SAAS,CAAC,mCAAgB,CAAC,MAAM,CAAC;QAArE,CAAqE;QACvE,oBAAoB,EAAE;YACpB,OAAA,mFAAwC,CAAC,SAAS,CAChD,mCAAgB,CAAC,MAAM,CACxB;QAFD,CAEC;QACH,WAAW,EAAE;YACX,OAAA,mEAAgC,CAAC,SAAS,CAAC,mCAAgB,CAAC,KAAK,CAAC;QAAlE,CAAkE;QACpE,iBAAiB,EAAE;YACjB,OAAA,+EAAsC,CAAC,SAAS,CAAC,mCAAgB,CAAC,KAAK,CAAC;QAAxE,CAAwE;QAC1E,aAAa,EAAE;YACb,OAAA,uEAAkC,CAAC,SAAS,CAAC,mCAAgB,CAAC,KAAK,CAAC;QAApE,CAAoE;QACtE,mBAAmB,EAAE;YACnB,OAAA,mFAAwC,CAAC,SAAS,CAChD,mCAAgB,CAAC,KAAK,CACvB;QAFD,CAEC;KACJ;CACF,CAAC"}
@@ -4,7 +4,7 @@ import { IProject } from "../../IProject";
4
4
  export declare namespace FunctionalGenericTransformer {
5
5
  const transform: (props: {
6
6
  method: string;
7
- programmer: (project: IProject) => (modulo: ts.LeftHandSideExpression) => (equals: boolean) => (expression: ts.CallExpression, declaration: ts.FunctionDeclaration, init?: ts.Expression) => ts.FunctionDeclaration;
7
+ programmer: (project: IProject) => (modulo: ts.LeftHandSideExpression) => (equals: boolean) => (expression: ts.Expression, declaration: ts.FunctionDeclaration, init?: ts.Expression) => ts.Expression;
8
8
  equals: boolean;
9
- }) => (project: IProject) => (modulo: ts.LeftHandSideExpression) => (expression: ts.CallExpression) => ts.FunctionDeclaration;
9
+ }) => (project: IProject) => (modulo: ts.LeftHandSideExpression) => (expression: ts.CallExpression) => ts.Expression;
10
10
  }
@@ -1,11 +1,24 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
2
+ var __read = (this && this.__read) || function (o, n) {
3
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
4
+ if (!m) return o;
5
+ var i = m.call(o), r, ar = [], e;
6
+ try {
7
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
8
+ }
9
+ catch (error) { e = { error: error }; }
10
+ finally {
11
+ try {
12
+ if (r && !r.done && (m = i["return"])) m.call(i);
13
+ }
14
+ finally { if (e) throw e.error; }
15
+ }
16
+ return ar;
4
17
  };
5
18
  Object.defineProperty(exports, "__esModule", { value: true });
6
19
  exports.FunctionalGenericTransformer = void 0;
7
- var typescript_1 = __importDefault(require("typescript"));
8
20
  var TransformerError_1 = require("../../TransformerError");
21
+ var TypeFactory_1 = require("../../../factories/TypeFactory");
9
22
  var FunctionalGenericTransformer;
10
23
  (function (FunctionalGenericTransformer) {
11
24
  FunctionalGenericTransformer.transform = function (props) {
@@ -18,12 +31,27 @@ var FunctionalGenericTransformer;
18
31
  code: "typia.functional.".concat(props.method),
19
32
  message: "no input value.",
20
33
  });
21
- else if (false === typescript_1.default.isFunctionDeclaration(expression.arguments[0]))
34
+ // GET TYPE INFO
35
+ var _a = __read(expression.typeArguments && expression.typeArguments[0]
36
+ ? [
37
+ project.checker.getTypeFromTypeNode(expression.typeArguments[0]),
38
+ true,
39
+ ]
40
+ : [
41
+ project.checker.getTypeAtLocation(expression.arguments[0]),
42
+ false,
43
+ ], 2), type = _a[0], generic = _a[1];
44
+ if (generic === true)
45
+ throw new TransformerError_1.TransformerError({
46
+ code: "typia.functional.".concat(props.method),
47
+ message: "non-specified generic argument.",
48
+ });
49
+ else if (TypeFactory_1.TypeFactory.isFunction(type) === false)
22
50
  throw new TransformerError_1.TransformerError({
23
51
  code: "typia.functional.".concat(props.method),
24
52
  message: "input value is not a function.",
25
53
  });
26
- return props.programmer(project)(modulo)(props.equals)(expression, expression.arguments[0]);
54
+ return props.programmer(project)(modulo)(props.equals)(expression.arguments[0], type.symbol.declarations[0], expression.arguments[1]);
27
55
  };
28
56
  };
29
57
  };
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionalGenericTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/functional/FunctionalGenericTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,2DAA0D;AAE1D,IAAiB,4BAA4B,CAoC5C;AApCD,WAAiB,4BAA4B;IAC9B,sCAAS,GACpB,UAAC,KAcA;QACD,OAAA,UAAC,OAAiB;YAClB,OAAA,UAAC,MAAiC;gBAClC,OAAA,UAAC,UAA6B;oBAC5B,kBAAkB;oBAClB,IAAI,UAAU,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;wBACnC,MAAM,IAAI,mCAAgB,CAAC;4BACzB,IAAI,EAAE,2BAAoB,KAAK,CAAC,MAAM,CAAE;4BACxC,OAAO,EAAE,iBAAiB;yBAC3B,CAAC,CAAC;yBACA,IAAI,KAAK,KAAK,oBAAE,CAAC,qBAAqB,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAE,CAAC;wBACnE,MAAM,IAAI,mCAAgB,CAAC;4BACzB,IAAI,EAAE,2BAAoB,KAAK,CAAC,MAAM,CAAE;4BACxC,OAAO,EAAE,gCAAgC;yBAC1C,CAAC,CAAC;oBACL,OAAO,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CACpD,UAAU,EACV,UAAU,CAAC,SAAS,CAAC,CAAC,CAAE,CACzB,CAAC;gBACJ,CAAC;YAhBD,CAgBC;QAjBD,CAiBC;IAlBD,CAkBC,CAAC;AACN,CAAC,EApCgB,4BAA4B,4CAA5B,4BAA4B,QAoC5C"}
1
+ {"version":3,"file":"FunctionalGenericTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/functional/FunctionalGenericTransformer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAEA,2DAA0D;AAC1D,8DAA6D;AAE7D,IAAiB,4BAA4B,CAsD5C;AAtDD,WAAiB,4BAA4B;IAC9B,sCAAS,GACpB,UAAC,KAcA;QACD,OAAA,UAAC,OAAiB;YAClB,OAAA,UAAC,MAAiC;gBAClC,OAAA,UAAC,UAA6B;oBAC5B,kBAAkB;oBAClB,IAAI,UAAU,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;wBACnC,MAAM,IAAI,mCAAgB,CAAC;4BACzB,IAAI,EAAE,2BAAoB,KAAK,CAAC,MAAM,CAAE;4BACxC,OAAO,EAAE,iBAAiB;yBAC3B,CAAC,CAAC;oBAEL,gBAAgB;oBACV,IAAA,KAAA,OACJ,UAAU,CAAC,aAAa,IAAI,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC;wBACrD,CAAC,CAAC;4BACE,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;4BAChE,IAAI;yBACL;wBACH,CAAC,CAAC;4BACE,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAE,CAAC;4BAC3D,KAAK;yBACN,IAAA,EATA,IAAI,QAAA,EAAE,OAAO,QASb,CAAC;oBACR,IAAI,OAAO,KAAK,IAAI;wBAClB,MAAM,IAAI,mCAAgB,CAAC;4BACzB,IAAI,EAAE,2BAAoB,KAAK,CAAC,MAAM,CAAE;4BACxC,OAAO,EAAE,iCAAiC;yBAC3C,CAAC,CAAC;yBACA,IAAI,yBAAW,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,KAAK;wBAC7C,MAAM,IAAI,mCAAgB,CAAC;4BACzB,IAAI,EAAE,2BAAoB,KAAK,CAAC,MAAM,CAAE;4BACxC,OAAO,EAAE,gCAAgC;yBAC1C,CAAC,CAAC;oBACL,OAAO,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CACpD,UAAU,CAAC,SAAS,CAAC,CAAC,CAAE,EACxB,IAAI,CAAC,MAAO,CAAC,YAAa,CAAC,CAAC,CAA2B,EACvD,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CACxB,CAAC;gBACJ,CAAC;YAlCD,CAkCC;QAnCD,CAmCC;IApCD,CAoCC,CAAC;AACN,CAAC,EAtDgB,4BAA4B,4CAA5B,4BAA4B,QAsD5C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "typia",
3
- "version": "5.5.0-dev.20240303",
3
+ "version": "5.5.0-dev.20240303-3",
4
4
  "description": "Superfast runtime validators with only one line",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
@@ -12,22 +12,21 @@ export namespace FunctionalAssertFunctionProgrammer {
12
12
  expression: ts.Expression,
13
13
  declaration: ts.FunctionDeclaration,
14
14
  init?: ts.Expression,
15
- ) => {
15
+ ): ts.ArrowFunction => {
16
16
  const params = FunctionalAssertParametersProgrammer.prepare(project)(
17
17
  modulo,
18
18
  )(equals)(declaration, init);
19
19
  const output = FunctionAssertReturnProgrammer.prepare(project)(modulo)(
20
20
  equals,
21
21
  )(expression, declaration, init);
22
- return ts.factory.createFunctionDeclaration(
22
+ return ts.factory.createArrowFunction(
23
23
  output.async
24
24
  ? [ts.factory.createModifier(ts.SyntaxKind.AsyncKeyword)]
25
25
  : undefined,
26
26
  undefined,
27
- undefined,
28
- undefined,
29
27
  declaration.parameters,
30
28
  declaration.type,
29
+ undefined,
31
30
  ts.factory.createBlock(
32
31
  [
33
32
  params.assert,
@@ -12,7 +12,7 @@ export namespace FunctionalAssertParametersProgrammer {
12
12
  expression: ts.Expression,
13
13
  declaration: ts.FunctionDeclaration,
14
14
  init?: ts.Expression,
15
- ) => {
15
+ ): ts.ArrowFunction => {
16
16
  const { assert, call } = prepare(project)(modulo)(equals)(
17
17
  declaration,
18
18
  init,
@@ -25,15 +25,14 @@ export namespace FunctionalAssertParametersProgrammer {
25
25
  return type.isTypeParameter() && type.symbol.name === "Promise";
26
26
  })();
27
27
 
28
- return ts.factory.createFunctionDeclaration(
28
+ return ts.factory.createArrowFunction(
29
29
  async
30
30
  ? [ts.factory.createModifier(ts.SyntaxKind.AsyncKeyword)]
31
31
  : undefined,
32
32
  undefined,
33
- undefined,
34
- undefined,
35
33
  declaration.parameters,
36
34
  declaration.type,
35
+ undefined,
37
36
  ts.factory.createBlock(
38
37
  [
39
38
  assert,
@@ -12,19 +12,18 @@ export namespace FunctionAssertReturnProgrammer {
12
12
  expression: ts.Expression,
13
13
  declaration: ts.FunctionDeclaration,
14
14
  init?: ts.Expression,
15
- ) => {
15
+ ): ts.ArrowFunction => {
16
16
  const { async, assert, variable, call, returns } = prepare(project)(
17
17
  modulo,
18
18
  )(equals)(expression, declaration, init);
19
- return ts.factory.createFunctionDeclaration(
19
+ return ts.factory.createArrowFunction(
20
20
  async
21
21
  ? [ts.factory.createModifier(ts.SyntaxKind.AsyncKeyword)]
22
22
  : undefined,
23
23
  undefined,
24
- undefined,
25
- undefined,
26
24
  declaration.parameters,
27
25
  declaration.type,
26
+ undefined,
28
27
  ts.factory.createBlock([assert, variable, call, returns], true),
29
28
  );
30
29
  };
@@ -104,9 +104,7 @@ import { FunctionAssertReturnProgrammer } from "../programmers/functional/Functi
104
104
  export namespace CallExpressionTransformer {
105
105
  export const transform =
106
106
  (project: IProject) =>
107
- (
108
- expression: ts.CallExpression,
109
- ): ts.Expression | ts.FunctionDeclaration | null => {
107
+ (expression: ts.CallExpression): ts.Expression | null => {
110
108
  //----
111
109
  // VALIDATIONS
112
110
  //----
@@ -133,9 +131,9 @@ export namespace CallExpressionTransformer {
133
131
  if (functor === undefined) return expression;
134
132
 
135
133
  // RETURNS WITH TRANSFORMATION
136
- const result: ts.Expression | ts.FunctionDeclaration | null = functor()(
137
- project,
138
- )(expression.expression)(expression);
134
+ const result: ts.Expression | null = functor()(project)(
135
+ expression.expression,
136
+ )(expression);
139
137
  return result ?? expression;
140
138
  };
141
139
 
@@ -151,9 +149,7 @@ type Task = (
151
149
  project: IProject,
152
150
  ) => (
153
151
  modulo: ts.LeftHandSideExpression,
154
- ) => (
155
- expression: ts.CallExpression,
156
- ) => ts.Expression | ts.FunctionDeclaration | null;
152
+ ) => (expression: ts.CallExpression) => ts.Expression | null;
157
153
 
158
154
  const FUNCTORS: Record<string, Record<string, () => Task>> = {
159
155
  module: {
@@ -1,6 +1,7 @@
1
1
  import ts from "typescript";
2
2
  import { IProject } from "../../IProject";
3
3
  import { TransformerError } from "../../TransformerError";
4
+ import { TypeFactory } from "../../../factories/TypeFactory";
4
5
 
5
6
  export namespace FunctionalGenericTransformer {
6
7
  export const transform =
@@ -13,10 +14,10 @@ export namespace FunctionalGenericTransformer {
13
14
  ) => (
14
15
  equals: boolean,
15
16
  ) => (
16
- expression: ts.CallExpression,
17
+ expression: ts.Expression,
17
18
  declaration: ts.FunctionDeclaration,
18
19
  init?: ts.Expression,
19
- ) => ts.FunctionDeclaration;
20
+ ) => ts.Expression;
20
21
  equals: boolean;
21
22
  }) =>
22
23
  (project: IProject) =>
@@ -28,14 +29,32 @@ export namespace FunctionalGenericTransformer {
28
29
  code: `typia.functional.${props.method}`,
29
30
  message: `no input value.`,
30
31
  });
31
- else if (false === ts.isFunctionDeclaration(expression.arguments[0]!))
32
+
33
+ // GET TYPE INFO
34
+ const [type, generic]: [ts.Type, boolean] =
35
+ expression.typeArguments && expression.typeArguments[0]
36
+ ? [
37
+ project.checker.getTypeFromTypeNode(expression.typeArguments[0]),
38
+ true,
39
+ ]
40
+ : [
41
+ project.checker.getTypeAtLocation(expression.arguments[0]!),
42
+ false,
43
+ ];
44
+ if (generic === true)
45
+ throw new TransformerError({
46
+ code: `typia.functional.${props.method}`,
47
+ message: `non-specified generic argument.`,
48
+ });
49
+ else if (TypeFactory.isFunction(type) === false)
32
50
  throw new TransformerError({
33
51
  code: `typia.functional.${props.method}`,
34
52
  message: `input value is not a function.`,
35
53
  });
36
54
  return props.programmer(project)(modulo)(props.equals)(
37
- expression,
38
55
  expression.arguments[0]!,
56
+ type.symbol!.declarations![0] as ts.FunctionDeclaration,
57
+ expression.arguments[1],
39
58
  );
40
59
  };
41
60
  }