@irrelon/battlescript 3.1.7 → 3.2.1

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 (180) hide show
  1. package/bin/functionality.ts +15 -27
  2. package/bin/index.js +4099 -2473
  3. package/bin/index.js.map +1 -1
  4. package/bin/index.ts +16 -28
  5. package/dist/bin/functionality.d.ts +1 -1
  6. package/dist/bin/functionality.d.ts.map +1 -1
  7. package/dist/exports/typescript/enums/EnumNodeKind.d.ts +7 -1
  8. package/dist/exports/typescript/enums/EnumNodeKind.d.ts.map +1 -1
  9. package/dist/exports/typescript/enums/EnumNodeProp.d.ts +3 -1
  10. package/dist/exports/typescript/enums/EnumNodeProp.d.ts.map +1 -1
  11. package/dist/exports/typescript/helpers/miniAstLayout.d.ts +4 -0
  12. package/dist/exports/typescript/helpers/miniAstLayout.d.ts.map +1 -0
  13. package/dist/index.js +4054 -2532
  14. package/dist/index.js.map +1 -1
  15. package/dist/scripts/createAstNode.d.ts +2 -0
  16. package/dist/scripts/createAstNode.d.ts.map +1 -0
  17. package/dist/scripts/exportGen/helpers/generateHelpers.d.ts.map +1 -1
  18. package/dist/services/fullAst/BattleScriptFromAST.d.ts +9 -2
  19. package/dist/services/fullAst/BattleScriptFromAST.d.ts.map +1 -1
  20. package/dist/services/fullAst/BattleScriptToAST.d.ts +10 -2
  21. package/dist/services/fullAst/BattleScriptToAST.d.ts.map +1 -1
  22. package/dist/services/grammar/ts/language/BattleScriptLexer.d.ts +88 -78
  23. package/dist/services/grammar/ts/language/BattleScriptLexer.d.ts.map +1 -1
  24. package/dist/services/grammar/ts/language/BattleScriptListener.d.ts +121 -0
  25. package/dist/services/grammar/ts/language/BattleScriptListener.d.ts.map +1 -1
  26. package/dist/services/grammar/ts/language/BattleScriptParser.d.ts +258 -95
  27. package/dist/services/grammar/ts/language/BattleScriptParser.d.ts.map +1 -1
  28. package/dist/services/grammar/ts/language/BattleScriptVisitor.d.ts +77 -0
  29. package/dist/services/grammar/ts/language/BattleScriptVisitor.d.ts.map +1 -1
  30. package/dist/services/index.d.ts +0 -1
  31. package/dist/services/index.d.ts.map +1 -1
  32. package/dist/services/miniAst/BattleScriptToMiniAST.d.ts.map +1 -1
  33. package/dist/services/miniAst/MiniAstToFullAst.d.ts +28 -0
  34. package/dist/services/miniAst/MiniAstToFullAst.d.ts.map +1 -0
  35. package/dist/services/miniAst/binaryTypeToByteSize.d.ts +1 -1
  36. package/dist/services/miniAst/index.d.ts +1 -0
  37. package/dist/services/miniAst/index.d.ts.map +1 -1
  38. package/dist/services/miniAst/miniAstLayout.d.ts.map +1 -1
  39. package/dist/services/parser.d.ts +1 -3
  40. package/dist/services/parser.d.ts.map +1 -1
  41. package/dist/tsconfig.types.tsbuildinfo +1 -1
  42. package/dist/types/ast/nodes/AfterDeclarationNode.d.ts +3 -0
  43. package/dist/types/ast/nodes/AfterDeclarationNode.d.ts.map +1 -1
  44. package/dist/types/ast/nodes/AfterExpressionNode.d.ts +3 -0
  45. package/dist/types/ast/nodes/AfterExpressionNode.d.ts.map +1 -1
  46. package/dist/types/ast/nodes/ArrayExpressionNode.d.ts +3 -0
  47. package/dist/types/ast/nodes/ArrayExpressionNode.d.ts.map +1 -1
  48. package/dist/types/ast/nodes/AssignmentExpressionNode.d.ts +3 -0
  49. package/dist/types/ast/nodes/AssignmentExpressionNode.d.ts.map +1 -1
  50. package/dist/types/ast/nodes/AssignmentPatternNode.d.ts +3 -0
  51. package/dist/types/ast/nodes/AssignmentPatternNode.d.ts.map +1 -1
  52. package/dist/types/ast/nodes/AstNode.d.ts +2 -2
  53. package/dist/types/ast/nodes/AstNode.d.ts.map +1 -1
  54. package/dist/types/ast/nodes/BinaryExpressionNode.d.ts +3 -0
  55. package/dist/types/ast/nodes/BinaryExpressionNode.d.ts.map +1 -1
  56. package/dist/types/ast/nodes/BlockStatementNode.d.ts +3 -0
  57. package/dist/types/ast/nodes/BlockStatementNode.d.ts.map +1 -1
  58. package/dist/types/ast/nodes/BreakStatementNode.d.ts +3 -0
  59. package/dist/types/ast/nodes/BreakStatementNode.d.ts.map +1 -1
  60. package/dist/types/ast/nodes/CallExpressionNode.d.ts +3 -0
  61. package/dist/types/ast/nodes/CallExpressionNode.d.ts.map +1 -1
  62. package/dist/types/ast/nodes/CancelStatementNode.d.ts +3 -0
  63. package/dist/types/ast/nodes/CancelStatementNode.d.ts.map +1 -1
  64. package/dist/types/ast/nodes/CatchStatementNode.d.ts +3 -0
  65. package/dist/types/ast/nodes/CatchStatementNode.d.ts.map +1 -1
  66. package/dist/types/ast/nodes/CommentNode.d.ts +3 -0
  67. package/dist/types/ast/nodes/CommentNode.d.ts.map +1 -1
  68. package/dist/types/ast/nodes/ConstantDeclarationNode.d.ts +3 -0
  69. package/dist/types/ast/nodes/ConstantDeclarationNode.d.ts.map +1 -1
  70. package/dist/types/ast/nodes/ConstantDeclaratorNode.d.ts +3 -0
  71. package/dist/types/ast/nodes/ConstantDeclaratorNode.d.ts.map +1 -1
  72. package/dist/types/ast/nodes/ContinueStatementNode.d.ts +3 -0
  73. package/dist/types/ast/nodes/ContinueStatementNode.d.ts.map +1 -1
  74. package/dist/types/ast/nodes/CustomTypeNode.d.ts +3 -0
  75. package/dist/types/ast/nodes/CustomTypeNode.d.ts.map +1 -1
  76. package/dist/types/ast/nodes/DataTypeNode.d.ts +3 -0
  77. package/dist/types/ast/nodes/DataTypeNode.d.ts.map +1 -1
  78. package/dist/types/ast/nodes/DefineStatementNode.d.ts +14 -0
  79. package/dist/types/ast/nodes/DefineStatementNode.d.ts.map +1 -0
  80. package/dist/types/ast/nodes/EnumDeclarationNode.d.ts +14 -0
  81. package/dist/types/ast/nodes/EnumDeclarationNode.d.ts.map +1 -0
  82. package/dist/types/ast/nodes/EvaluateCaseNode.d.ts +3 -0
  83. package/dist/types/ast/nodes/EvaluateCaseNode.d.ts.map +1 -1
  84. package/dist/types/ast/nodes/EvaluateFallbackNode.d.ts +3 -0
  85. package/dist/types/ast/nodes/EvaluateFallbackNode.d.ts.map +1 -1
  86. package/dist/types/ast/nodes/EvaluateStatementNode.d.ts +3 -0
  87. package/dist/types/ast/nodes/EvaluateStatementNode.d.ts.map +1 -1
  88. package/dist/types/ast/nodes/EventDeclarationNode.d.ts +3 -0
  89. package/dist/types/ast/nodes/EventDeclarationNode.d.ts.map +1 -1
  90. package/dist/types/ast/nodes/EveryDeclarationNode.d.ts +3 -0
  91. package/dist/types/ast/nodes/EveryDeclarationNode.d.ts.map +1 -1
  92. package/dist/types/ast/nodes/EveryExpressionNode.d.ts +3 -0
  93. package/dist/types/ast/nodes/EveryExpressionNode.d.ts.map +1 -1
  94. package/dist/types/ast/nodes/ExpressionStatementNode.d.ts +3 -0
  95. package/dist/types/ast/nodes/ExpressionStatementNode.d.ts.map +1 -1
  96. package/dist/types/ast/nodes/ForStatementNode.d.ts +3 -0
  97. package/dist/types/ast/nodes/ForStatementNode.d.ts.map +1 -1
  98. package/dist/types/ast/nodes/FunctionDeclarationNode.d.ts +3 -0
  99. package/dist/types/ast/nodes/FunctionDeclarationNode.d.ts.map +1 -1
  100. package/dist/types/ast/nodes/FunctionDefinitionNode.d.ts +3 -0
  101. package/dist/types/ast/nodes/FunctionDefinitionNode.d.ts.map +1 -1
  102. package/dist/types/ast/nodes/IdentifierNode.d.ts +3 -0
  103. package/dist/types/ast/nodes/IdentifierNode.d.ts.map +1 -1
  104. package/dist/types/ast/nodes/IfStatementNode.d.ts +3 -0
  105. package/dist/types/ast/nodes/IfStatementNode.d.ts.map +1 -1
  106. package/dist/types/ast/nodes/ImportDeclarationNode.d.ts +3 -0
  107. package/dist/types/ast/nodes/ImportDeclarationNode.d.ts.map +1 -1
  108. package/dist/types/ast/nodes/InterfaceNode.d.ts +3 -0
  109. package/dist/types/ast/nodes/InterfaceNode.d.ts.map +1 -1
  110. package/dist/types/ast/nodes/InterfacePropertyDeclarationNode.d.ts +3 -0
  111. package/dist/types/ast/nodes/InterfacePropertyDeclarationNode.d.ts.map +1 -1
  112. package/dist/types/ast/nodes/LiteralBooleanNode.d.ts +2 -1
  113. package/dist/types/ast/nodes/LiteralBooleanNode.d.ts.map +1 -1
  114. package/dist/types/ast/nodes/LiteralDoubleNode.d.ts +2 -0
  115. package/dist/types/ast/nodes/LiteralDoubleNode.d.ts.map +1 -1
  116. package/dist/types/ast/nodes/LiteralFloatNode.d.ts +2 -0
  117. package/dist/types/ast/nodes/LiteralFloatNode.d.ts.map +1 -1
  118. package/dist/types/ast/nodes/LiteralIntNode.d.ts +2 -1
  119. package/dist/types/ast/nodes/LiteralIntNode.d.ts.map +1 -1
  120. package/dist/types/ast/nodes/LiteralNullNode.d.ts +2 -1
  121. package/dist/types/ast/nodes/LiteralNullNode.d.ts.map +1 -1
  122. package/dist/types/ast/nodes/LiteralStringNode.d.ts +2 -1
  123. package/dist/types/ast/nodes/LiteralStringNode.d.ts.map +1 -1
  124. package/dist/types/ast/nodes/LiteralUndefinedNode.d.ts +2 -1
  125. package/dist/types/ast/nodes/LiteralUndefinedNode.d.ts.map +1 -1
  126. package/dist/types/ast/nodes/MemberExpressionNode.d.ts +3 -0
  127. package/dist/types/ast/nodes/MemberExpressionNode.d.ts.map +1 -1
  128. package/dist/types/ast/nodes/ObjectExpressionNode.d.ts +3 -0
  129. package/dist/types/ast/nodes/ObjectExpressionNode.d.ts.map +1 -1
  130. package/dist/types/ast/nodes/ObjectPropertyNode.d.ts +3 -0
  131. package/dist/types/ast/nodes/ObjectPropertyNode.d.ts.map +1 -1
  132. package/dist/types/ast/nodes/OptimisedAssignmentExpressionNode.d.ts +3 -0
  133. package/dist/types/ast/nodes/OptimisedAssignmentExpressionNode.d.ts.map +1 -1
  134. package/dist/types/ast/nodes/OptimisedBinaryExpressionNode.d.ts +3 -0
  135. package/dist/types/ast/nodes/OptimisedBinaryExpressionNode.d.ts.map +1 -1
  136. package/dist/types/ast/nodes/OptimisedMemberExpressionNode.d.ts +3 -0
  137. package/dist/types/ast/nodes/OptimisedMemberExpressionNode.d.ts.map +1 -1
  138. package/dist/types/ast/nodes/OptimisedUpdateExpressionNode.d.ts +3 -0
  139. package/dist/types/ast/nodes/OptimisedUpdateExpressionNode.d.ts.map +1 -1
  140. package/dist/types/ast/nodes/ProgramDeclarationNode.d.ts +3 -0
  141. package/dist/types/ast/nodes/ProgramDeclarationNode.d.ts.map +1 -1
  142. package/dist/types/ast/nodes/ProgramPropertyDeclarationNode.d.ts +3 -0
  143. package/dist/types/ast/nodes/ProgramPropertyDeclarationNode.d.ts.map +1 -1
  144. package/dist/types/ast/nodes/ProtocolDeclarationNode.d.ts +16 -0
  145. package/dist/types/ast/nodes/ProtocolDeclarationNode.d.ts.map +1 -0
  146. package/dist/types/ast/nodes/ProtocolTypeNode.d.ts +13 -0
  147. package/dist/types/ast/nodes/ProtocolTypeNode.d.ts.map +1 -0
  148. package/dist/types/ast/nodes/RequireStatementNode.d.ts +15 -0
  149. package/dist/types/ast/nodes/RequireStatementNode.d.ts.map +1 -0
  150. package/dist/types/ast/nodes/RestElementNode.d.ts +3 -0
  151. package/dist/types/ast/nodes/RestElementNode.d.ts.map +1 -1
  152. package/dist/types/ast/nodes/ReturnStatementNode.d.ts +3 -0
  153. package/dist/types/ast/nodes/ReturnStatementNode.d.ts.map +1 -1
  154. package/dist/types/ast/nodes/RootNode.d.ts +3 -0
  155. package/dist/types/ast/nodes/RootNode.d.ts.map +1 -1
  156. package/dist/types/ast/nodes/StateDeclarationNode.d.ts +3 -0
  157. package/dist/types/ast/nodes/StateDeclarationNode.d.ts.map +1 -1
  158. package/dist/types/ast/nodes/StepDeclarationNode.d.ts +14 -0
  159. package/dist/types/ast/nodes/StepDeclarationNode.d.ts.map +1 -0
  160. package/dist/types/ast/nodes/TransportStatementNode.d.ts +13 -0
  161. package/dist/types/ast/nodes/TransportStatementNode.d.ts.map +1 -0
  162. package/dist/types/ast/nodes/UnaryExpressionNode.d.ts +3 -0
  163. package/dist/types/ast/nodes/UnaryExpressionNode.d.ts.map +1 -1
  164. package/dist/types/ast/nodes/UpdateExpressionNode.d.ts +3 -0
  165. package/dist/types/ast/nodes/UpdateExpressionNode.d.ts.map +1 -1
  166. package/dist/types/ast/nodes/VariableDeclarationNode.d.ts +3 -0
  167. package/dist/types/ast/nodes/VariableDeclarationNode.d.ts.map +1 -1
  168. package/dist/types/ast/nodes/VariableDeclaratorNode.d.ts +3 -0
  169. package/dist/types/ast/nodes/VariableDeclaratorNode.d.ts.map +1 -1
  170. package/dist/types/ast/nodes/WildcardNode.d.ts +3 -0
  171. package/dist/types/ast/nodes/WildcardNode.d.ts.map +1 -1
  172. package/dist/types/ast/nodes/index.d.ts +6 -0
  173. package/dist/types/ast/nodes/index.d.ts.map +1 -1
  174. package/dist/types/ast/unions/ProtocolBodyUnion.d.ts +3 -0
  175. package/dist/types/ast/unions/ProtocolBodyUnion.d.ts.map +1 -0
  176. package/dist/types/ast/unions/StepBodyUnion.d.ts +3 -0
  177. package/dist/types/ast/unions/StepBodyUnion.d.ts.map +1 -0
  178. package/dist/types/ast/unions/TypeUnion.d.ts +2 -2
  179. package/dist/types/ast/unions/TypeUnion.d.ts.map +1 -1
  180. package/package.json +7 -11
@@ -1 +1 @@
1
- {"version":3,"file":"EveryExpressionNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/EveryExpressionNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,kBAAkB,EAAE,eAAe,EAAC,MAAM,SAAS,CAAC;AAE7F,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;AAE/F,MAAM,WAAW,mBAAoB,SAAQ,WAAW;IACvD,IAAI,EAAE,kBAAkB,CAAC;IACzB,QAAQ,EAAE,eAAe,CAAC;IAC1B,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,IAAI,EAAE,kBAAkB,CAAC;CACzB;AAED,eAAO,MAAM,yBAAyB,EAAE,aAAa,CAAC,mBAAmB,CAAC,EAaxE,CAAC;AAEH,eAAO,MAAM,wBAAwB,GAAI,UAAU,iBAAiB,EAAE,KAAK,sBAAsB,KAAG,mBAkBnG,CAAA"}
1
+ {"version":3,"file":"EveryExpressionNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/EveryExpressionNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,kBAAkB,EAAE,eAAe,EAAC,MAAM,SAAS,CAAC;AAE7F,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;AAC/F,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAGvD,MAAM,WAAW,mBAAoB,SAAQ,WAAW;IACvD,IAAI,EAAE,kBAAkB,CAAC;IACzB,QAAQ,EAAE,eAAe,CAAC;IAC1B,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,IAAI,EAAE,kBAAkB,CAAC;CACzB;AAED,eAAO,MAAM,yBAAyB,EAAE,aAAa,CAAC,mBAAmB,CAAC,EAaxE,CAAC;AAEH,eAAO,MAAM,wBAAwB,GAAI,UAAU,iBAAiB,EAAE,KAAK,sBAAsB,KAAG,mBAkBnG,CAAA;AAED,eAAO,MAAM,0BAA0B,GAAI,UAAU,mBAAmB,EAAE,MAAM,mBAAmB,EAAE,UAAS,YAAiB,WAU9H,CAAA"}
@@ -1,10 +1,13 @@
1
1
  import type { AstNodeBase, AstNodeLayout, ExpressionUnion } from "@/types";
2
2
  import type { BattleScriptToAST } from "@/services";
3
3
  import type { ExpressionStatementContext } from "@/services/grammar/ts/language/BattleScriptParser";
4
+ import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
5
+ import type { VisitOptions } from "@/types/VisitOptions";
4
6
  export interface ExpressionStatementNode extends AstNodeBase {
5
7
  kind: "EXPRESSION_STATEMENT";
6
8
  expression: ExpressionUnion;
7
9
  }
8
10
  export declare const ExpressionStatementNodeLayout: AstNodeLayout<ExpressionStatementNode>[];
9
11
  export declare const expressionStatementToAstNode: (instance: BattleScriptToAST, ctx: ExpressionStatementContext) => ExpressionStatementNode;
12
+ export declare const expressionStatementFromAstNode: (instance: BattleScriptFromAST, node: ExpressionStatementNode, options?: VisitOptions) => string;
10
13
  //# sourceMappingURL=ExpressionStatementNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExpressionStatementNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/ExpressionStatementNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,eAAe,EAAC,MAAM,SAAS,CAAC;AAEzE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,0BAA0B,EAAC,MAAM,mDAAmD,CAAC;AAElG,MAAM,WAAW,uBAAwB,SAAQ,WAAW;IAC3D,IAAI,EAAE,sBAAsB,CAAC;IAC7B,UAAU,EAAE,eAAe,CAAC;CAC5B;AAED,eAAO,MAAM,6BAA6B,EAAE,aAAa,CAAC,uBAAuB,CAAC,EAMhF,CAAC;AAEH,eAAO,MAAM,4BAA4B,GAAI,UAAU,iBAAiB,EAAE,KAAK,0BAA0B,KAAG,uBAO3G,CAAA"}
1
+ {"version":3,"file":"ExpressionStatementNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/ExpressionStatementNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,eAAe,EAAC,MAAM,SAAS,CAAC;AAEzE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,0BAA0B,EAAC,MAAM,mDAAmD,CAAC;AAClG,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAEvD,MAAM,WAAW,uBAAwB,SAAQ,WAAW;IAC3D,IAAI,EAAE,sBAAsB,CAAC;IAC7B,UAAU,EAAE,eAAe,CAAC;CAC5B;AAED,eAAO,MAAM,6BAA6B,EAAE,aAAa,CAAC,uBAAuB,CAAC,EAMhF,CAAC;AAEH,eAAO,MAAM,4BAA4B,GAAI,UAAU,iBAAiB,EAAE,KAAK,0BAA0B,KAAG,uBAO3G,CAAA;AAED,eAAO,MAAM,8BAA8B,GAAI,UAAU,mBAAmB,EAAE,MAAM,uBAAuB,EAAE,UAAS,YAAiB,WAKrI,CAAA"}
@@ -1,6 +1,8 @@
1
1
  import type { AstNodeBase, AstNodeLayout, BlockStatementNode, ExpressionUnion, VariableDeclaratorNode } from "@/types";
2
2
  import type { ForStatementContext } from "@/services/grammar/ts/language/BattleScriptParser";
3
3
  import type { BattleScriptToAST } from "@/services";
4
+ import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
5
+ import type { VisitOptions } from "@/types/VisitOptions";
4
6
  export interface ForStatementNode extends AstNodeBase {
5
7
  kind: "FOR_STATEMENT";
6
8
  init: VariableDeclaratorNode;
@@ -10,4 +12,5 @@ export interface ForStatementNode extends AstNodeBase {
10
12
  }
11
13
  export declare const ForStatementNodeLayout: AstNodeLayout<ForStatementNode>[];
12
14
  export declare const forStatementToAstNode: (instance: BattleScriptToAST, ctx: ForStatementContext) => ForStatementNode;
15
+ export declare const forStatementFromAstNode: (instance: BattleScriptFromAST, node: ForStatementNode, options?: VisitOptions) => string;
13
16
  //# sourceMappingURL=ForStatementNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ForStatementNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/ForStatementNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,kBAAkB,EAAE,eAAe,EAAE,sBAAsB,EAAC,MAAM,SAAS,CAAC;AAErH,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,mDAAmD,CAAC;AAC3F,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAElD,MAAM,WAAW,gBAAiB,SAAQ,WAAW;IACpD,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE,sBAAsB,CAAC;IAC7B,IAAI,EAAE,eAAe,CAAC;IACtB,MAAM,EAAE,eAAe,CAAC;IACxB,IAAI,EAAE,kBAAkB,CAAC;CACzB;AAED,eAAO,MAAM,sBAAsB,EAAE,aAAa,CAAC,gBAAgB,CAAC,EAelE,CAAC;AAEH,eAAO,MAAM,qBAAqB,GAAI,UAAU,iBAAiB,EAAE,KAAK,mBAAmB,KAAG,gBAS7F,CAAA"}
1
+ {"version":3,"file":"ForStatementNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/ForStatementNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,kBAAkB,EAAE,eAAe,EAAE,sBAAsB,EAAC,MAAM,SAAS,CAAC;AAErH,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,mDAAmD,CAAC;AAC3F,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAGvD,MAAM,WAAW,gBAAiB,SAAQ,WAAW;IACpD,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE,sBAAsB,CAAC;IAC7B,IAAI,EAAE,eAAe,CAAC;IACtB,MAAM,EAAE,eAAe,CAAC;IACxB,IAAI,EAAE,kBAAkB,CAAC;CACzB;AAED,eAAO,MAAM,sBAAsB,EAAE,aAAa,CAAC,gBAAgB,CAAC,EAelE,CAAC;AAEH,eAAO,MAAM,qBAAqB,GAAI,UAAU,iBAAiB,EAAE,KAAK,mBAAmB,KAAG,gBAS7F,CAAA;AAED,eAAO,MAAM,uBAAuB,GAAI,UAAU,mBAAmB,EAAE,MAAM,gBAAgB,EAAE,UAAS,YAAiB,WAKvH,CAAA"}
@@ -1,6 +1,8 @@
1
1
  import type { AstNodeBase, AstNodeLayout, DataTypeNode, FunctionParameterUnion, IdentifierNode } from "@/types";
2
2
  import type { BattleScriptToAST } from "@/services";
3
3
  import type { FunctionDeclarationContext } from "@/services/grammar/ts/language/BattleScriptParser";
4
+ import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
5
+ import type { VisitOptions } from "@/types/VisitOptions";
4
6
  export interface FunctionDeclarationNode extends AstNodeBase {
5
7
  kind: "FUNCTION_DECLARATION";
6
8
  returnType: DataTypeNode;
@@ -11,4 +13,5 @@ export interface FunctionDeclarationNode extends AstNodeBase {
11
13
  }
12
14
  export declare const FunctionDeclarationNodeLayout: AstNodeLayout<FunctionDeclarationNode>[];
13
15
  export declare const functionDeclarationToAstNode: (instance: BattleScriptToAST, ctx: FunctionDeclarationContext) => FunctionDeclarationNode;
16
+ export declare const functionDeclarationFromAstNode: (instance: BattleScriptFromAST, node: FunctionDeclarationNode, options?: VisitOptions) => string;
14
17
  //# sourceMappingURL=FunctionDeclarationNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionDeclarationNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/FunctionDeclarationNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,sBAAsB,EAAE,cAAc,EAAC,MAAM,SAAS,CAAC;AAE9G,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,0BAA0B,EAAC,MAAM,mDAAmD,CAAC;AAElG,MAAM,WAAW,uBAAwB,SAAQ,WAAW;IAC3D,IAAI,EAAE,sBAAsB,CAAC;IAC7B,UAAU,EAAE,YAAY,CAAC;IACzB,EAAE,EAAE,cAAc,CAAC;IACnB,MAAM,EAAE,sBAAsB,EAAE,CAAC;IACjC,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;CAChB;AAED,eAAO,MAAM,6BAA6B,EAAE,aAAa,CAAC,uBAAuB,CAAC,EAehF,CAAC;AAEH,eAAO,MAAM,4BAA4B,GAAI,UAAU,iBAAiB,EAAE,KAAK,0BAA0B,KAAG,uBAU3G,CAAA"}
1
+ {"version":3,"file":"FunctionDeclarationNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/FunctionDeclarationNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,sBAAsB,EAAE,cAAc,EAAC,MAAM,SAAS,CAAC;AAE9G,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,0BAA0B,EAAC,MAAM,mDAAmD,CAAC;AAClG,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAEvD,MAAM,WAAW,uBAAwB,SAAQ,WAAW;IAC3D,IAAI,EAAE,sBAAsB,CAAC;IAC7B,UAAU,EAAE,YAAY,CAAC;IACzB,EAAE,EAAE,cAAc,CAAC;IACnB,MAAM,EAAE,sBAAsB,EAAE,CAAC;IACjC,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;CAChB;AAED,eAAO,MAAM,6BAA6B,EAAE,aAAa,CAAC,uBAAuB,CAAC,EAehF,CAAC;AAEH,eAAO,MAAM,4BAA4B,GAAI,UAAU,iBAAiB,EAAE,KAAK,0BAA0B,KAAG,uBAU3G,CAAA;AAED,eAAO,MAAM,8BAA8B,GAAI,UAAU,mBAAmB,EAAE,MAAM,uBAAuB,EAAE,UAAS,YAAiB,WAgBtI,CAAA"}
@@ -1,6 +1,8 @@
1
1
  import type { AstNodeBase, AstNodeLayout, BlockStatementNode, DataTypeNode, IdentifierNode, TokenUnion } from "@/types";
2
2
  import type { BattleScriptToAST } from "@/services";
3
3
  import type { FunctionDefinitionContext } from "@/services/grammar/ts/language/BattleScriptParser";
4
+ import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
5
+ import type { VisitOptions } from "@/types/VisitOptions";
4
6
  export interface FunctionDefinitionNode extends AstNodeBase {
5
7
  kind: "FUNCTION_DEFINITION";
6
8
  returnType: DataTypeNode;
@@ -11,4 +13,5 @@ export interface FunctionDefinitionNode extends AstNodeBase {
11
13
  }
12
14
  export declare const FunctionDefinitionNodeLayout: AstNodeLayout<FunctionDefinitionNode>[];
13
15
  export declare const functionDefinitionToAstNode: (instance: BattleScriptToAST, ctx: FunctionDefinitionContext) => FunctionDefinitionNode;
16
+ export declare const functionDefinitionFromAstNode: (instance: BattleScriptFromAST, node: FunctionDefinitionNode, options?: VisitOptions) => string;
14
17
  //# sourceMappingURL=FunctionDefinitionNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionDefinitionNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/FunctionDefinitionNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,kBAAkB,EAAE,YAAY,EAAE,cAAc,EAAE,UAAU,EAAC,MAAM,SAAS,CAAC;AAEtH,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,mDAAmD,CAAC;AAEjG,MAAM,WAAW,sBAAuB,SAAQ,WAAW;IAC1D,IAAI,EAAE,qBAAqB,CAAC;IAC5B,UAAU,EAAE,YAAY,CAAC;IACzB,EAAE,EAAE,UAAU,CAAC;IACf,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,IAAI,EAAE,kBAAkB,CAAC;IACzB,MAAM,EAAE,OAAO,CAAC;CAChB;AAED,eAAO,MAAM,4BAA4B,EAAE,aAAa,CAAC,sBAAsB,CAAC,EAe9E,CAAC;AAEH,eAAO,MAAM,2BAA2B,GAAI,UAAU,iBAAiB,EAAE,KAAK,yBAAyB,KAAG,sBAUzG,CAAA"}
1
+ {"version":3,"file":"FunctionDefinitionNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/FunctionDefinitionNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,kBAAkB,EAAE,YAAY,EAAE,cAAc,EAAE,UAAU,EAAC,MAAM,SAAS,CAAC;AAEtH,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,mDAAmD,CAAC;AACjG,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAEvD,MAAM,WAAW,sBAAuB,SAAQ,WAAW;IAC1D,IAAI,EAAE,qBAAqB,CAAC;IAC5B,UAAU,EAAE,YAAY,CAAC;IACzB,EAAE,EAAE,UAAU,CAAC;IACf,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,IAAI,EAAE,kBAAkB,CAAC;IACzB,MAAM,EAAE,OAAO,CAAC;CAChB;AAED,eAAO,MAAM,4BAA4B,EAAE,aAAa,CAAC,sBAAsB,CAAC,EAe9E,CAAC;AAEH,eAAO,MAAM,2BAA2B,GAAI,UAAU,iBAAiB,EAAE,KAAK,yBAAyB,KAAG,sBAUzG,CAAA;AAED,eAAO,MAAM,6BAA6B,GAAI,UAAU,mBAAmB,EAAE,MAAM,sBAAsB,EAAE,UAAS,YAAiB,WAenI,CAAA"}
@@ -1,6 +1,8 @@
1
1
  import type { AstNodeBase, AstNodeLayout, TypeUnion } from "@/types";
2
2
  import type { BattleScriptToAST } from "@/services";
3
3
  import type { FunctionNameIdentifierContext, IdentifierContext } from "@/services/grammar/ts/language/BattleScriptParser";
4
+ import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
5
+ import type { VisitOptions } from "@/types/VisitOptions";
4
6
  export interface IdentifierNode extends AstNodeBase {
5
7
  kind: "IDENTIFIER";
6
8
  type?: TypeUnion;
@@ -9,4 +11,5 @@ export interface IdentifierNode extends AstNodeBase {
9
11
  export declare const IdentifierNodeLayout: AstNodeLayout<IdentifierNode>[];
10
12
  export declare const identifierToAstNode: (instance: BattleScriptToAST, ctx: IdentifierContext) => IdentifierNode;
11
13
  export declare const functionNameIdentifierToAstNode: (instance: BattleScriptToAST, ctx: FunctionNameIdentifierContext) => IdentifierNode;
14
+ export declare const identifierFromAstNode: (instance: BattleScriptFromAST, node: IdentifierNode, options?: VisitOptions) => string;
12
15
  //# sourceMappingURL=IdentifierNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IdentifierNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/IdentifierNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,SAAS,EAAC,MAAM,SAAS,CAAC;AAEnE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EACX,6BAA6B,EAC7B,iBAAiB,EACjB,MAAM,mDAAmD,CAAC;AAE3D,MAAM,WAAW,cAAe,SAAQ,WAAW;IAClD,IAAI,EAAE,YAAY,CAAC;IACnB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,oBAAoB,EAAE,aAAa,CAAC,cAAc,CAAC,EAU9D,CAAC;AAEH,eAAO,MAAM,mBAAmB,GAAI,UAAU,iBAAiB,EAAE,KAAK,iBAAiB,KAAG,cAMzF,CAAA;AAED,eAAO,MAAM,+BAA+B,GAAI,UAAU,iBAAiB,EAAE,KAAK,6BAA6B,KAAG,cAMjH,CAAA"}
1
+ {"version":3,"file":"IdentifierNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/IdentifierNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,SAAS,EAAC,MAAM,SAAS,CAAC;AAEnE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EACX,6BAA6B,EAC7B,iBAAiB,EACjB,MAAM,mDAAmD,CAAC;AAC3D,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAEvD,MAAM,WAAW,cAAe,SAAQ,WAAW;IAClD,IAAI,EAAE,YAAY,CAAC;IACnB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,oBAAoB,EAAE,aAAa,CAAC,cAAc,CAAC,EAU9D,CAAC;AAEH,eAAO,MAAM,mBAAmB,GAAI,UAAU,iBAAiB,EAAE,KAAK,iBAAiB,KAAG,cAMzF,CAAA;AAED,eAAO,MAAM,+BAA+B,GAAI,UAAU,iBAAiB,EAAE,KAAK,6BAA6B,KAAG,cAMjH,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAI,UAAU,mBAAmB,EAAE,MAAM,cAAc,EAAE,UAAS,YAAiB,WAKpH,CAAA"}
@@ -1,6 +1,8 @@
1
1
  import type { AstNodeBase, AstNodeLayout, BinaryExpressionNode, BlockStatementNode } from "@/types";
2
2
  import type { BattleScriptToAST } from "@/services";
3
3
  import type { IfStatementContext } from "@/services/grammar/ts/language/BattleScriptParser";
4
+ import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
5
+ import type { VisitOptions } from "@/types/VisitOptions";
4
6
  export interface IfStatementNode extends AstNodeBase {
5
7
  kind: "IF_STATEMENT";
6
8
  test: BinaryExpressionNode;
@@ -9,4 +11,5 @@ export interface IfStatementNode extends AstNodeBase {
9
11
  }
10
12
  export declare const IfStatementNodeLayout: AstNodeLayout<IfStatementNode>[];
11
13
  export declare const ifStatementToAstNode: (instance: BattleScriptToAST, ctx: IfStatementContext) => IfStatementNode;
14
+ export declare const ifStatementFromAstNode: (instance: BattleScriptFromAST, node: IfStatementNode, options?: VisitOptions) => string;
12
15
  //# sourceMappingURL=IfStatementNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IfStatementNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/IfStatementNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,oBAAoB,EAAE,kBAAkB,EAAC,MAAM,SAAS,CAAC;AAElG,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,mDAAmD,CAAC;AAE1F,MAAM,WAAW,eAAgB,SAAQ,WAAW;IACnD,IAAI,EAAE,cAAc,CAAC;IACrB,IAAI,EAAE,oBAAoB,CAAC;IAC3B,UAAU,EAAE,kBAAkB,CAAC;IAC/B,SAAS,EAAE,kBAAkB,GAAG,eAAe,GAAG,IAAI,CAAC;CACvD;AAED,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,eAAe,CAAC,EAYhE,CAAC;AAEH,eAAO,MAAM,oBAAoB,GAAI,UAAU,iBAAiB,EAAE,KAAK,kBAAkB,KAAG,eAkB3F,CAAA"}
1
+ {"version":3,"file":"IfStatementNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/IfStatementNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,oBAAoB,EAAE,kBAAkB,EAAC,MAAM,SAAS,CAAC;AAElG,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,mDAAmD,CAAC;AAC1F,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAGvD,MAAM,WAAW,eAAgB,SAAQ,WAAW;IACnD,IAAI,EAAE,cAAc,CAAC;IACrB,IAAI,EAAE,oBAAoB,CAAC;IAC3B,UAAU,EAAE,kBAAkB,CAAC;IAC/B,SAAS,EAAE,kBAAkB,GAAG,eAAe,GAAG,IAAI,CAAC;CACvD;AAED,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,eAAe,CAAC,EAYhE,CAAC;AAEH,eAAO,MAAM,oBAAoB,GAAI,UAAU,iBAAiB,EAAE,KAAK,kBAAkB,KAAG,eAkB3F,CAAA;AAED,eAAO,MAAM,sBAAsB,GAAI,UAAU,mBAAmB,EAAE,MAAM,eAAe,EAAE,UAAS,YAAiB,WAMrH,CAAA"}
@@ -2,6 +2,8 @@ import type { AstNodeBase, AstNodeLayout, IdentifierNode, LiteralStringNode } fr
2
2
  import type { ImportNativeContext } from "@/services/grammar/ts/language/BattleScriptParser";
3
3
  import { type ImportExternalContext } from "@/services/grammar/ts/language/BattleScriptParser";
4
4
  import type { BattleScriptToAST } from "@/services";
5
+ import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
6
+ import type { VisitOptions } from "@/types/VisitOptions";
5
7
  export interface ImportDeclarationNode extends AstNodeBase {
6
8
  kind: "IMPORT_DECLARATION";
7
9
  isNamespace: boolean;
@@ -11,4 +13,5 @@ export interface ImportDeclarationNode extends AstNodeBase {
11
13
  export declare const ImportDeclarationNodeLayout: AstNodeLayout<ImportDeclarationNode>[];
12
14
  export declare const importNativeToAstNode: (instance: BattleScriptToAST, ctx: ImportNativeContext) => ImportDeclarationNode;
13
15
  export declare const importExternalToAstNode: (instance: BattleScriptToAST, ctx: ImportExternalContext) => ImportDeclarationNode;
16
+ export declare const importDeclarationFromAstNode: (instance: BattleScriptFromAST, node: ImportDeclarationNode, options?: VisitOptions) => string;
14
17
  //# sourceMappingURL=ImportDeclarationNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ImportDeclarationNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/ImportDeclarationNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,iBAAiB,EAAC,MAAM,SAAS,CAAC;AAE3F,OAAO,KAAK,EAAoB,mBAAmB,EAAC,MAAM,mDAAmD,CAAC;AAC9G,OAAO,EAAC,KAAK,qBAAqB,EAAC,MAAM,mDAAmD,CAAC;AAC7F,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAElD,MAAM,WAAW,qBAAsB,SAAQ,WAAW;IACzD,IAAI,EAAE,oBAAoB,CAAC;IAC3B,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,iBAAiB,GAAG,cAAc,CAAC;CAC3C;AAED,eAAO,MAAM,2BAA2B,EAAE,aAAa,CAAC,qBAAqB,CAAC,EAY5E,CAAC;AAEH,eAAO,MAAM,qBAAqB,GAAI,UAAU,iBAAiB,EAAE,KAAK,mBAAmB,KAAG,qBAgB7F,CAAA;AAED,eAAO,MAAM,uBAAuB,GAAI,UAAU,iBAAiB,EAAE,KAAK,qBAAqB,KAAG,qBAQjG,CAAA"}
1
+ {"version":3,"file":"ImportDeclarationNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/ImportDeclarationNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,iBAAiB,EAAC,MAAM,SAAS,CAAC;AAE3F,OAAO,KAAK,EAAoB,mBAAmB,EAAC,MAAM,mDAAmD,CAAC;AAC9G,OAAO,EAAC,KAAK,qBAAqB,EAAC,MAAM,mDAAmD,CAAC;AAC7F,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAGvD,MAAM,WAAW,qBAAsB,SAAQ,WAAW;IACzD,IAAI,EAAE,oBAAoB,CAAC;IAC3B,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,iBAAiB,GAAG,cAAc,CAAC;CAC3C;AAED,eAAO,MAAM,2BAA2B,EAAE,aAAa,CAAC,qBAAqB,CAAC,EAY5E,CAAC;AAEH,eAAO,MAAM,qBAAqB,GAAI,UAAU,iBAAiB,EAAE,KAAK,mBAAmB,KAAG,qBAgB7F,CAAA;AAED,eAAO,MAAM,uBAAuB,GAAI,UAAU,iBAAiB,EAAE,KAAK,qBAAqB,KAAG,qBAQjG,CAAA;AAED,eAAO,MAAM,4BAA4B,GAAI,UAAU,mBAAmB,EAAE,MAAM,qBAAqB,EAAE,UAAS,YAAiB,WAQjI,CAAA"}
@@ -1,6 +1,8 @@
1
1
  import type { AstNode, AstNodeBase, AstNodeLayout } from "@/types";
2
2
  import type { BattleScriptToAST } from "@/services";
3
3
  import type { InterfaceDeclarationContext } from "@/services/grammar/ts/language/BattleScriptParser";
4
+ import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
5
+ import type { VisitOptions } from "@/types/VisitOptions";
4
6
  export interface InterfaceNode extends AstNodeBase {
5
7
  kind: "INTERFACE";
6
8
  name: AstNode;
@@ -9,4 +11,5 @@ export interface InterfaceNode extends AstNodeBase {
9
11
  }
10
12
  export declare const InterfaceNodeLayout: AstNodeLayout<InterfaceNode>[];
11
13
  export declare const interfaceDeclarationToAstNode: (instance: BattleScriptToAST, ctx: InterfaceDeclarationContext) => InterfaceNode;
14
+ export declare const interfaceDeclarationFromAstNode: (instance: BattleScriptFromAST, node: InterfaceNode, options?: VisitOptions) => string;
12
15
  //# sourceMappingURL=InterfaceNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"InterfaceNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/InterfaceNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAEjE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,2BAA2B,EAAC,MAAM,mDAAmD,CAAC;AAEnG,MAAM,WAAW,aAAc,SAAQ,WAAW;IACjD,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,OAAO,EAAE,CAAC;CACtB;AAED,eAAO,MAAM,mBAAmB,EAAE,aAAa,CAAC,aAAa,CAAC,EAY5D,CAAC;AAEH,eAAO,MAAM,6BAA6B,GAAI,UAAU,iBAAiB,EAAE,KAAK,2BAA2B,KAAG,aAQ7G,CAAA"}
1
+ {"version":3,"file":"InterfaceNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/InterfaceNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAEjE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,2BAA2B,EAAC,MAAM,mDAAmD,CAAC;AACnG,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAGvD,MAAM,WAAW,aAAc,SAAQ,WAAW;IACjD,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,OAAO,EAAE,CAAC;CACtB;AAED,eAAO,MAAM,mBAAmB,EAAE,aAAa,CAAC,aAAa,CAAC,EAY5D,CAAC;AAEH,eAAO,MAAM,6BAA6B,GAAI,UAAU,iBAAiB,EAAE,KAAK,2BAA2B,KAAG,aAQ7G,CAAA;AAED,eAAO,MAAM,+BAA+B,GAAI,UAAU,mBAAmB,EAAE,MAAM,aAAa,EAAE,UAAS,YAAiB,WAe5H,CAAA"}
@@ -1,6 +1,8 @@
1
1
  import type { AstNodeBase, AstNodeLayout, DataTypeNode, IdentifierNode } from "@/types";
2
2
  import type { BattleScriptToAST } from "@/services";
3
3
  import type { InterfacePropertyContext } from "@/services/grammar/ts/language/BattleScriptParser";
4
+ import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
5
+ import type { VisitOptions } from "@/types/VisitOptions";
4
6
  export interface InterfacePropertyDeclarationNode extends AstNodeBase {
5
7
  kind: "INTERFACE_PROPERTY";
6
8
  type: DataTypeNode;
@@ -8,4 +10,5 @@ export interface InterfacePropertyDeclarationNode extends AstNodeBase {
8
10
  }
9
11
  export declare const InterfacePropertyDeclarationNodeLayout: AstNodeLayout<InterfacePropertyDeclarationNode>[];
10
12
  export declare const interfacePropertyToAstNode: (instance: BattleScriptToAST, ctx: InterfacePropertyContext) => InterfacePropertyDeclarationNode;
13
+ export declare const interfacePropertyDeclarationFromAstNode: (instance: BattleScriptFromAST, node: InterfacePropertyDeclarationNode, options?: VisitOptions) => string;
11
14
  //# sourceMappingURL=InterfacePropertyDeclarationNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"InterfacePropertyDeclarationNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/InterfacePropertyDeclarationNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAC,MAAM,SAAS,CAAC;AAEtF,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,wBAAwB,EAAC,MAAM,mDAAmD,CAAC;AAEhG,MAAM,WAAW,gCAAiC,SAAQ,WAAW;IACpE,IAAI,EAAE,oBAAoB,CAAC;IAC3B,IAAI,EAAE,YAAY,CAAC;IACnB,GAAG,EAAE,cAAc,CAAC;CACpB;AAED,eAAO,MAAM,sCAAsC,EAAE,aAAa,CAAC,gCAAgC,CAAC,EASlG,CAAC;AAEH,eAAO,MAAM,0BAA0B,GAAI,UAAU,iBAAiB,EAAE,KAAK,wBAAwB,KAAG,gCAWvG,CAAA"}
1
+ {"version":3,"file":"InterfacePropertyDeclarationNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/InterfacePropertyDeclarationNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAC,MAAM,SAAS,CAAC;AAEtF,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,wBAAwB,EAAC,MAAM,mDAAmD,CAAC;AAChG,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAEvD,MAAM,WAAW,gCAAiC,SAAQ,WAAW;IACpE,IAAI,EAAE,oBAAoB,CAAC;IAC3B,IAAI,EAAE,YAAY,CAAC;IACnB,GAAG,EAAE,cAAc,CAAC;CACpB;AAED,eAAO,MAAM,sCAAsC,EAAE,aAAa,CAAC,gCAAgC,CAAC,EASlG,CAAC;AAEH,eAAO,MAAM,0BAA0B,GAAI,UAAU,iBAAiB,EAAE,KAAK,wBAAwB,KAAG,gCAWvG,CAAA;AAED,eAAO,MAAM,uCAAuC,GAAI,UAAU,mBAAmB,EAAE,MAAM,gCAAgC,EAAE,UAAS,YAAiB,WAQvJ,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import type { AstNodeBase, AstNodeLayout } from "@/types";
2
- import type { BattleScriptToAST } from "@/services";
2
+ import type { BattleScriptFromAST, BattleScriptToAST } from "@/services";
3
3
  import type { BooleanLiteralContext } from "@/services/grammar/ts/language/BattleScriptParser";
4
4
  export interface LiteralBooleanNode extends AstNodeBase {
5
5
  kind: "LITERAL_BOOLEAN";
@@ -8,4 +8,5 @@ export interface LiteralBooleanNode extends AstNodeBase {
8
8
  }
9
9
  export declare const LiteralBooleanNodeLayout: AstNodeLayout<LiteralBooleanNode>[];
10
10
  export declare const booleanLiteralToAstNode: (instance: BattleScriptToAST, ctx: BooleanLiteralContext) => LiteralBooleanNode;
11
+ export declare const literalBooleanFromAstNode: (instance: BattleScriptFromAST, node: any) => any;
11
12
  //# sourceMappingURL=LiteralBooleanNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LiteralBooleanNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/LiteralBooleanNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAExD,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,mDAAmD,CAAC;AAE7F,MAAM,WAAW,kBAAmB,SAAQ,WAAW;IACtD,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,OAAO,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;CACZ;AAED,eAAO,MAAM,wBAAwB,EAAE,aAAa,CAAC,kBAAkB,CAAC,EAMtE,CAAC;AAEH,eAAO,MAAM,uBAAuB,GAAI,UAAU,iBAAiB,EAAE,KAAK,qBAAqB,KAAG,kBAQjG,CAAA"}
1
+ {"version":3,"file":"LiteralBooleanNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/LiteralBooleanNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAExD,OAAO,KAAK,EAAC,mBAAmB,EAAE,iBAAiB,EAAC,MAAM,YAAY,CAAC;AACvE,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,mDAAmD,CAAC;AAE7F,MAAM,WAAW,kBAAmB,SAAQ,WAAW;IACtD,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,OAAO,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;CACZ;AAED,eAAO,MAAM,wBAAwB,EAAE,aAAa,CAAC,kBAAkB,CAAC,EAMtE,CAAC;AAEH,eAAO,MAAM,uBAAuB,GAAI,UAAU,iBAAiB,EAAE,KAAK,qBAAqB,KAAG,kBAQjG,CAAA;AACD,eAAO,MAAM,yBAAyB,GAAI,UAAU,mBAAmB,EAAE,MAAM,GAAG,QAAa,CAAC"}
@@ -1,8 +1,10 @@
1
1
  import type { AstNodeBase, AstNodeLayout } from "@/types";
2
+ import type { BattleScriptFromAST } from "@/services";
2
3
  export interface LiteralDoubleNode extends AstNodeBase {
3
4
  kind: "LITERAL_DOUBLE";
4
5
  value: number;
5
6
  raw: string;
6
7
  }
7
8
  export declare const LiteralDoubleNodeLayout: AstNodeLayout<LiteralDoubleNode>[];
9
+ export declare const literalDoubleFromAstNode: (instance: BattleScriptFromAST, node: any) => any;
8
10
  //# sourceMappingURL=LiteralDoubleNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LiteralDoubleNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/LiteralDoubleNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAGxD,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACrD,IAAI,EAAE,gBAAgB,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACZ;AAED,eAAO,MAAM,uBAAuB,EAAE,aAAa,CAAC,iBAAiB,CAAC,EAMpE,CAAC"}
1
+ {"version":3,"file":"LiteralDoubleNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/LiteralDoubleNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAExD,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,YAAY,CAAC;AAEpD,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACrD,IAAI,EAAE,gBAAgB,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACZ;AAED,eAAO,MAAM,uBAAuB,EAAE,aAAa,CAAC,iBAAiB,CAAC,EAMpE,CAAC;AACH,eAAO,MAAM,wBAAwB,GAAI,UAAU,mBAAmB,EAAE,MAAM,GAAG,QAAa,CAAC"}
@@ -1,8 +1,10 @@
1
1
  import type { AstNodeBase, AstNodeLayout } from "@/types";
2
+ import type { BattleScriptFromAST } from "@/services";
2
3
  export interface LiteralFloatNode extends AstNodeBase {
3
4
  kind: "LITERAL_FLOAT";
4
5
  value: number;
5
6
  raw: string;
6
7
  }
7
8
  export declare const LiteralFloatNodeLayout: AstNodeLayout<LiteralFloatNode>[];
9
+ export declare const literalFloatFromAstNode: (instance: BattleScriptFromAST, node: any) => any;
8
10
  //# sourceMappingURL=LiteralFloatNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LiteralFloatNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/LiteralFloatNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAGxD,MAAM,WAAW,gBAAiB,SAAQ,WAAW;IACpD,IAAI,EAAE,eAAe,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACZ;AAED,eAAO,MAAM,sBAAsB,EAAE,aAAa,CAAC,gBAAgB,CAAC,EAMlE,CAAC"}
1
+ {"version":3,"file":"LiteralFloatNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/LiteralFloatNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAExD,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,YAAY,CAAC;AAEpD,MAAM,WAAW,gBAAiB,SAAQ,WAAW;IACpD,IAAI,EAAE,eAAe,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACZ;AAED,eAAO,MAAM,sBAAsB,EAAE,aAAa,CAAC,gBAAgB,CAAC,EAMlE,CAAC;AACH,eAAO,MAAM,uBAAuB,GAAI,UAAU,mBAAmB,EAAE,MAAM,GAAG,QAAa,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import type { AstNodeBase, AstNodeLayout, LiteralDoubleNode, LiteralFloatNode } from "@/types";
2
2
  import type { NumberLiteralContext } from "@/services/grammar/ts/language/BattleScriptParser";
3
- import type { BattleScriptToAST } from "@/services";
3
+ import type { BattleScriptFromAST, BattleScriptToAST } from "@/services";
4
4
  export interface LiteralIntNode extends AstNodeBase {
5
5
  kind: "LITERAL_INT";
6
6
  value: number;
@@ -8,4 +8,5 @@ export interface LiteralIntNode extends AstNodeBase {
8
8
  }
9
9
  export declare const LiteralIntNodeLayout: AstNodeLayout<LiteralIntNode>[];
10
10
  export declare const numberLiteralToAstNode: (instance: BattleScriptToAST, ctx: NumberLiteralContext) => LiteralIntNode | LiteralFloatNode | LiteralDoubleNode;
11
+ export declare const literalIntFromAstNode: (instance: BattleScriptFromAST, node: any) => any;
11
12
  //# sourceMappingURL=LiteralIntNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LiteralIntNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/LiteralIntNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,iBAAiB,EAAE,gBAAgB,EAAC,MAAM,SAAS,CAAC;AAE7F,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,mDAAmD,CAAC;AAC5F,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAElD,MAAM,WAAW,cAAe,SAAQ,WAAW;IAClD,IAAI,EAAE,aAAa,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACZ;AAED,eAAO,MAAM,oBAAoB,EAAE,aAAa,CAAC,cAAc,CAAC,EAM9D,CAAC;AAMH,eAAO,MAAM,sBAAsB,GAAI,UAAU,iBAAiB,EAAE,KAAK,oBAAoB,KAAG,cAAc,GAAG,gBAAgB,GAAG,iBAmBnI,CAAA"}
1
+ {"version":3,"file":"LiteralIntNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/LiteralIntNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,iBAAiB,EAAE,gBAAgB,EAAC,MAAM,SAAS,CAAC;AAE7F,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,mDAAmD,CAAC;AAC5F,OAAO,KAAK,EAAC,mBAAmB,EAAE,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAEvE,MAAM,WAAW,cAAe,SAAQ,WAAW;IAClD,IAAI,EAAE,aAAa,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACZ;AAED,eAAO,MAAM,oBAAoB,EAAE,aAAa,CAAC,cAAc,CAAC,EAM9D,CAAC;AAMH,eAAO,MAAM,sBAAsB,GAAI,UAAU,iBAAiB,EAAE,KAAK,oBAAoB,KAAG,cAAc,GAAG,gBAAgB,GAAG,iBAmBnI,CAAA;AACD,eAAO,MAAM,qBAAqB,GAAI,UAAU,mBAAmB,EAAE,MAAM,GAAG,QAAa,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { AstNodeBase, AstNodeLayout } from "@/types";
2
- import type { BattleScriptToAST } from "@/services";
2
+ import type { BattleScriptFromAST, BattleScriptToAST } from "@/services";
3
3
  import type { NullLiteralContext } from "@/services/grammar/ts/language/BattleScriptParser";
4
4
  export interface LiteralNullNode extends AstNodeBase {
5
5
  kind: "LITERAL_NULL";
@@ -7,4 +7,5 @@ export interface LiteralNullNode extends AstNodeBase {
7
7
  }
8
8
  export declare const LiteralNullNodeLayout: AstNodeLayout<LiteralNullNode>[];
9
9
  export declare const nullLiteralToAstNode: (instance: BattleScriptToAST, ctx: NullLiteralContext) => LiteralNullNode;
10
+ export declare const literalNullFromAstNode: (instance: BattleScriptFromAST, node: any) => any;
10
11
  //# sourceMappingURL=LiteralNullNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LiteralNullNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/LiteralNullNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAExD,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,mDAAmD,CAAC;AAE1F,MAAM,WAAW,eAAgB,SAAQ,WAAW;IACnD,IAAI,EAAE,cAAc,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;CACZ;AAED,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,eAAe,CAAC,EAGhE,CAAC;AAEH,eAAO,MAAM,oBAAoB,GAAI,UAAU,iBAAiB,EAAE,KAAK,kBAAkB,KAAG,eAO3F,CAAA"}
1
+ {"version":3,"file":"LiteralNullNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/LiteralNullNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAExD,OAAO,KAAK,EAAC,mBAAmB,EAAE,iBAAiB,EAAC,MAAM,YAAY,CAAC;AACvE,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,mDAAmD,CAAC;AAE1F,MAAM,WAAW,eAAgB,SAAQ,WAAW;IACnD,IAAI,EAAE,cAAc,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;CACZ;AAED,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,eAAe,CAAC,EAGhE,CAAC;AAEH,eAAO,MAAM,oBAAoB,GAAI,UAAU,iBAAiB,EAAE,KAAK,kBAAkB,KAAG,eAO3F,CAAA;AACD,eAAO,MAAM,sBAAsB,GAAI,UAAU,mBAAmB,EAAE,MAAM,GAAG,QAAa,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { AstNodeBase, AstNodeLayout } from "@/types";
2
- import type { BattleScriptToAST } from "@/services";
2
+ import type { BattleScriptFromAST, BattleScriptToAST } from "@/services";
3
3
  import type { StringLiteralContext } from "@/services/grammar/ts/language/BattleScriptParser";
4
4
  export interface LiteralStringNode extends AstNodeBase {
5
5
  kind: "LITERAL_STRING";
@@ -8,4 +8,5 @@ export interface LiteralStringNode extends AstNodeBase {
8
8
  }
9
9
  export declare const LiteralStringNodeLayout: AstNodeLayout<LiteralStringNode>[];
10
10
  export declare const stringLiteralToAstNode: (instance: BattleScriptToAST, ctx: StringLiteralContext) => LiteralStringNode;
11
+ export declare const literalStringFromAstNode: (instance: BattleScriptFromAST, node: any) => any;
11
12
  //# sourceMappingURL=LiteralStringNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LiteralStringNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/LiteralStringNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAExD,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,mDAAmD,CAAC;AAE5F,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACrD,IAAI,EAAE,gBAAgB,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACZ;AAED,eAAO,MAAM,uBAAuB,EAAE,aAAa,CAAC,iBAAiB,CAAC,EAMpE,CAAC;AAEH,eAAO,MAAM,sBAAsB,GAAI,UAAU,iBAAiB,EAAE,KAAK,oBAAoB,KAAG,iBAO/F,CAAA"}
1
+ {"version":3,"file":"LiteralStringNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/LiteralStringNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAExD,OAAO,KAAK,EAAC,mBAAmB,EAAE,iBAAiB,EAAC,MAAM,YAAY,CAAC;AACvE,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,mDAAmD,CAAC;AAE5F,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACrD,IAAI,EAAE,gBAAgB,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACZ;AAED,eAAO,MAAM,uBAAuB,EAAE,aAAa,CAAC,iBAAiB,CAAC,EAMpE,CAAC;AAEH,eAAO,MAAM,sBAAsB,GAAI,UAAU,iBAAiB,EAAE,KAAK,oBAAoB,KAAG,iBAO/F,CAAA;AACD,eAAO,MAAM,wBAAwB,GAAI,UAAU,mBAAmB,EAAE,MAAM,GAAG,QAAa,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { AstNodeBase, AstNodeLayout } from "@/types";
2
- import type { BattleScriptToAST } from "@/services";
2
+ import type { BattleScriptFromAST, BattleScriptToAST } from "@/services";
3
3
  import type { UndefinedLiteralContext } from "@/services/grammar/ts/language/BattleScriptParser";
4
4
  export interface LiteralUndefinedNode extends AstNodeBase {
5
5
  kind: "LITERAL_UNDEFINED";
@@ -7,4 +7,5 @@ export interface LiteralUndefinedNode extends AstNodeBase {
7
7
  }
8
8
  export declare const LiteralUndefinedNodeLayout: AstNodeLayout<LiteralUndefinedNode>[];
9
9
  export declare const undefinedLiteralToAstNode: (instance: BattleScriptToAST, ctx: UndefinedLiteralContext) => LiteralUndefinedNode;
10
+ export declare const literalUndefinedFromAstNode: (instance: BattleScriptFromAST, node: any) => any;
10
11
  //# sourceMappingURL=LiteralUndefinedNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LiteralUndefinedNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/LiteralUndefinedNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAExD,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,uBAAuB,EAAC,MAAM,mDAAmD,CAAC;AAE/F,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACxD,IAAI,EAAE,mBAAmB,CAAC;IAC1B,GAAG,EAAE,MAAM,CAAC;CACZ;AAED,eAAO,MAAM,0BAA0B,EAAE,aAAa,CAAC,oBAAoB,CAAC,EAG1E,CAAC;AAEH,eAAO,MAAM,yBAAyB,GAAI,UAAU,iBAAiB,EAAE,KAAK,uBAAuB,KAAG,oBAOrG,CAAA"}
1
+ {"version":3,"file":"LiteralUndefinedNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/LiteralUndefinedNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAExD,OAAO,KAAK,EAAC,mBAAmB,EAAE,iBAAiB,EAAC,MAAM,YAAY,CAAC;AACvE,OAAO,KAAK,EAAC,uBAAuB,EAAC,MAAM,mDAAmD,CAAC;AAE/F,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACxD,IAAI,EAAE,mBAAmB,CAAC;IAC1B,GAAG,EAAE,MAAM,CAAC;CACZ;AAED,eAAO,MAAM,0BAA0B,EAAE,aAAa,CAAC,oBAAoB,CAAC,EAG1E,CAAC;AAEH,eAAO,MAAM,yBAAyB,GAAI,UAAU,iBAAiB,EAAE,KAAK,uBAAuB,KAAG,oBAOrG,CAAA;AACD,eAAO,MAAM,2BAA2B,GAAI,UAAU,mBAAmB,EAAE,MAAM,GAAG,QAAa,CAAC"}
@@ -1,6 +1,8 @@
1
1
  import type { AstNodeBase, AstNodeLayout, DataTypeNode, IdentifierNode, OptimisedMemberExpressionNode } from "@/types";
2
2
  import type { BattleScriptToAST } from "@/services";
3
3
  import type { ComputedMemberExpressionContext, NamespacedMemberExpressionContext, NonComputedMemberExpressionContext } from "@/services/grammar/ts/language/BattleScriptParser";
4
+ import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
5
+ import type { VisitOptions } from "@/types/VisitOptions";
4
6
  export interface MemberExpressionNode extends AstNodeBase {
5
7
  kind: "MEMBER_EXPRESSION";
6
8
  left: IdentifierNode;
@@ -13,4 +15,5 @@ export declare const MemberExpressionNodeLayout: AstNodeLayout<MemberExpressionN
13
15
  export declare const nonComputedMemberExpressionToAstNode: (instance: BattleScriptToAST, ctx: NonComputedMemberExpressionContext) => MemberExpressionNode | OptimisedMemberExpressionNode;
14
16
  export declare const namespacedMemberExpressionToAstNode: (instance: BattleScriptToAST, ctx: NamespacedMemberExpressionContext) => MemberExpressionNode | OptimisedMemberExpressionNode;
15
17
  export declare const computedMemberExpressionToAstNode: (instance: BattleScriptToAST, ctx: ComputedMemberExpressionContext) => MemberExpressionNode;
18
+ export declare const memberExpressionFromAstNode: (instance: BattleScriptFromAST, node: MemberExpressionNode, options?: VisitOptions) => string;
16
19
  //# sourceMappingURL=MemberExpressionNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MemberExpressionNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/MemberExpressionNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,6BAA6B,EAAC,MAAM,SAAS,CAAC;AAErH,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EACX,+BAA+B,EAC/B,iCAAiC,EACjC,kCAAkC,EAClC,MAAM,mDAAmD,CAAC;AAG3D,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACxD,IAAI,EAAE,mBAAmB,CAAC;IAC1B,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,cAAc,GAAG,oBAAoB,CAAC;IAC7C,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,GAAG,GAAG,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,YAAY,CAAC;CACpB;AAED,eAAO,MAAM,0BAA0B,EAAE,aAAa,CAAC,oBAAoB,CAAC,EAe1E,CAAC;AAEH,eAAO,MAAM,oCAAoC,GAAI,UAAU,iBAAiB,EAAE,KAAK,kCAAkC,KAAG,oBAAoB,GAAG,6BAqBlJ,CAAA;AAED,eAAO,MAAM,mCAAmC,GAAI,UAAU,iBAAiB,EAAE,KAAK,iCAAiC,KAAG,oBAAoB,GAAG,6BAqBhJ,CAAA;AAED,eAAO,MAAM,iCAAiC,GAAI,UAAU,iBAAiB,EAAE,KAAK,+BAA+B,KAAG,oBASrH,CAAA"}
1
+ {"version":3,"file":"MemberExpressionNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/MemberExpressionNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,6BAA6B,EAAC,MAAM,SAAS,CAAC;AAErH,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EACX,+BAA+B,EAC/B,iCAAiC,EACjC,kCAAkC,EAClC,MAAM,mDAAmD,CAAC;AAE3D,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAEvD,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACxD,IAAI,EAAE,mBAAmB,CAAC;IAC1B,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,cAAc,GAAG,oBAAoB,CAAC;IAC7C,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,GAAG,GAAG,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,YAAY,CAAC;CACpB;AAED,eAAO,MAAM,0BAA0B,EAAE,aAAa,CAAC,oBAAoB,CAAC,EAe1E,CAAC;AAEH,eAAO,MAAM,oCAAoC,GAAI,UAAU,iBAAiB,EAAE,KAAK,kCAAkC,KAAG,oBAAoB,GAAG,6BAqBlJ,CAAA;AAED,eAAO,MAAM,mCAAmC,GAAI,UAAU,iBAAiB,EAAE,KAAK,iCAAiC,KAAG,oBAAoB,GAAG,6BAqBhJ,CAAA;AAED,eAAO,MAAM,iCAAiC,GAAI,UAAU,iBAAiB,EAAE,KAAK,+BAA+B,KAAG,oBASrH,CAAA;AAED,eAAO,MAAM,2BAA2B,GAAI,UAAU,mBAAmB,EAAE,MAAM,oBAAoB,EAAE,UAAS,YAAiB,WAqBhI,CAAA"}
@@ -1,10 +1,13 @@
1
1
  import type { AstNodeBase, AstNodeLayout, ObjectPropertyNode } from "@/types";
2
2
  import type { BattleScriptToAST } from "@/services";
3
3
  import type { ObjectExpressionInternalContext } from "@/services/grammar/ts/language/BattleScriptParser";
4
+ import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
5
+ import type { VisitOptions } from "@/types/VisitOptions";
4
6
  export interface ObjectExpressionNode extends AstNodeBase {
5
7
  kind: "OBJECT_EXPRESSION";
6
8
  properties: ObjectPropertyNode[];
7
9
  }
8
10
  export declare const ObjectExpressionNodeLayout: AstNodeLayout<ObjectExpressionNode>[];
9
11
  export declare const objectExpressionInternalToAstNode: (instance: BattleScriptToAST, ctx: ObjectExpressionInternalContext) => ObjectExpressionNode;
12
+ export declare const objectExpressionFromAstNode: (instance: BattleScriptFromAST, node: ObjectExpressionNode, options?: VisitOptions) => string;
10
13
  //# sourceMappingURL=ObjectExpressionNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ObjectExpressionNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/ObjectExpressionNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,kBAAkB,EAAC,MAAM,SAAS,CAAC;AAE5E,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,+BAA+B,EAAC,MAAM,mDAAmD,CAAC;AAEvG,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACxD,IAAI,EAAE,mBAAmB,CAAC;IAC1B,UAAU,EAAE,kBAAkB,EAAE,CAAC;CACjC;AAED,eAAO,MAAM,0BAA0B,EAAE,aAAa,CAAC,oBAAoB,CAAC,EAM1E,CAAC;AAEH,eAAO,MAAM,iCAAiC,GAAI,UAAU,iBAAiB,EAAE,KAAK,+BAA+B,KAAG,oBAMrH,CAAA"}
1
+ {"version":3,"file":"ObjectExpressionNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/ObjectExpressionNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,kBAAkB,EAAC,MAAM,SAAS,CAAC;AAE5E,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,+BAA+B,EAAC,MAAM,mDAAmD,CAAC;AACvG,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAEvD,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACxD,IAAI,EAAE,mBAAmB,CAAC;IAC1B,UAAU,EAAE,kBAAkB,EAAE,CAAC;CACjC;AAED,eAAO,MAAM,0BAA0B,EAAE,aAAa,CAAC,oBAAoB,CAAC,EAM1E,CAAC;AAEH,eAAO,MAAM,iCAAiC,GAAI,UAAU,iBAAiB,EAAE,KAAK,+BAA+B,KAAG,oBAMrH,CAAA;AAED,eAAO,MAAM,2BAA2B,GAAI,UAAU,mBAAmB,EAAE,MAAM,oBAAoB,EAAE,UAAS,YAAiB,WAI/H,CAAA"}
@@ -1,6 +1,8 @@
1
1
  import type { AstNodeBase, AstNodeLayout, ExpressionUnion, IdentifierNode, LiteralStringNode } from "@/types";
2
2
  import type { BattleScriptToAST } from "@/services";
3
3
  import type { ObjectPropertyContext } from "@/services/grammar/ts/language/BattleScriptParser";
4
+ import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
5
+ import type { VisitOptions } from "@/types/VisitOptions";
4
6
  export interface ObjectPropertyNode extends AstNodeBase {
5
7
  kind: "OBJECT_PROPERTY";
6
8
  key: IdentifierNode | LiteralStringNode;
@@ -8,4 +10,5 @@ export interface ObjectPropertyNode extends AstNodeBase {
8
10
  }
9
11
  export declare const ObjectPropertyNodeLayout: AstNodeLayout<ObjectPropertyNode>[];
10
12
  export declare const objectPropertyToAstNode: (instance: BattleScriptToAST, ctx: ObjectPropertyContext) => ObjectPropertyNode;
13
+ export declare const objectPropertyFromAstNode: (instance: BattleScriptFromAST, node: ObjectPropertyNode, options?: VisitOptions) => string;
11
14
  //# sourceMappingURL=ObjectPropertyNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ObjectPropertyNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/ObjectPropertyNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,cAAc,EAAE,iBAAiB,EAAC,MAAM,SAAS,CAAC;AAE5G,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,mDAAmD,CAAC;AAE7F,MAAM,WAAW,kBAAmB,SAAQ,WAAW;IACtD,IAAI,EAAE,iBAAiB,CAAC;IACxB,GAAG,EAAE,cAAc,GAAG,iBAAiB,CAAC;IACxC,KAAK,EAAE,eAAe,CAAC;CACvB;AAED,eAAO,MAAM,wBAAwB,EAAE,aAAa,CAAC,kBAAkB,CAAC,EAStE,CAAC;AAEH,eAAO,MAAM,uBAAuB,GAAI,UAAU,iBAAiB,EAAE,KAAK,qBAAqB,KAAG,kBAOjG,CAAA"}
1
+ {"version":3,"file":"ObjectPropertyNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/ObjectPropertyNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,cAAc,EAAE,iBAAiB,EAAC,MAAM,SAAS,CAAC;AAE5G,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,mDAAmD,CAAC;AAC7F,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAEvD,MAAM,WAAW,kBAAmB,SAAQ,WAAW;IACtD,IAAI,EAAE,iBAAiB,CAAC;IACxB,GAAG,EAAE,cAAc,GAAG,iBAAiB,CAAC;IACxC,KAAK,EAAE,eAAe,CAAC;CACvB;AAED,eAAO,MAAM,wBAAwB,EAAE,aAAa,CAAC,kBAAkB,CAAC,EAStE,CAAC;AAEH,eAAO,MAAM,uBAAuB,GAAI,UAAU,iBAAiB,EAAE,KAAK,qBAAqB,KAAG,kBAOjG,CAAA;AAED,eAAO,MAAM,yBAAyB,GAAI,UAAU,mBAAmB,EAAE,MAAM,kBAAkB,EAAE,UAAS,YAAiB,WAI3H,CAAA"}
@@ -1,6 +1,8 @@
1
1
  import type { AstNodeBase, AstNodeLayout } from "@/types";
2
2
  import type { BattleScriptToAST } from "@/services";
3
3
  import type { AssignmentExpressionContext } from "@/services/grammar/ts/language/BattleScriptParser";
4
+ import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
5
+ import type { VisitOptions } from "@/types/VisitOptions";
4
6
  export interface OptimisedAssignmentExpressionNode extends AstNodeBase {
5
7
  kind: "OPTIMISED_ASSIGNMENT_EXPRESSION";
6
8
  left: string;
@@ -9,4 +11,5 @@ export interface OptimisedAssignmentExpressionNode extends AstNodeBase {
9
11
  }
10
12
  export declare const OptimisedAssignmentExpressionNodeLayout: AstNodeLayout<OptimisedAssignmentExpressionNode>[];
11
13
  export declare const optimisedAssignmentExpressionToAstNode: (instance: BattleScriptToAST, ctx: AssignmentExpressionContext) => OptimisedAssignmentExpressionNode;
14
+ export declare const optimisedAssignmentExpressionFromAstNode: (instance: BattleScriptFromAST, node: OptimisedAssignmentExpressionNode, options?: VisitOptions) => string;
12
15
  //# sourceMappingURL=OptimisedAssignmentExpressionNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"OptimisedAssignmentExpressionNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/OptimisedAssignmentExpressionNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAExD,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,2BAA2B,EAAC,MAAM,mDAAmD,CAAC;AAEnG,MAAM,WAAW,iCAAkC,SAAQ,WAAW;IACrE,IAAI,EAAE,iCAAiC,CAAC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,uCAAuC,EAAE,aAAa,CAAC,iCAAiC,CAAC,EAYpG,CAAC;AAEH,eAAO,MAAM,sCAAsC,GAAI,UAAU,iBAAiB,EAAE,KAAK,2BAA2B,KAAG,iCAQtH,CAAA"}
1
+ {"version":3,"file":"OptimisedAssignmentExpressionNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/OptimisedAssignmentExpressionNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAExD,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,2BAA2B,EAAC,MAAM,mDAAmD,CAAC;AACnG,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAEvD,MAAM,WAAW,iCAAkC,SAAQ,WAAW;IACrE,IAAI,EAAE,iCAAiC,CAAC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,uCAAuC,EAAE,aAAa,CAAC,iCAAiC,CAAC,EAYpG,CAAC;AAEH,eAAO,MAAM,sCAAsC,GAAI,UAAU,iBAAiB,EAAE,KAAK,2BAA2B,KAAG,iCAQtH,CAAA;AAED,eAAO,MAAM,wCAAwC,GAAI,UAAU,mBAAmB,EAAE,MAAM,iCAAiC,EAAE,UAAS,YAAiB,WAQzJ,CAAA"}
@@ -1,6 +1,8 @@
1
1
  import type { AstNodeBase, AstNodeLayout, BinaryOperator } from "@/types";
2
2
  import type { BattleScriptToAST } from "@/services";
3
3
  import type { BinaryExpressionContext } from "@/services/grammar/ts/language/BattleScriptParser";
4
+ import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
5
+ import type { VisitOptions } from "@/types/VisitOptions";
4
6
  export interface OptimisedBinaryExpressionNode extends AstNodeBase {
5
7
  kind: "OPTIMISED_BINARY_EXPRESSION";
6
8
  left: string;
@@ -9,4 +11,5 @@ export interface OptimisedBinaryExpressionNode extends AstNodeBase {
9
11
  }
10
12
  export declare const OptimisedBinaryExpressionNodeLayout: AstNodeLayout<OptimisedBinaryExpressionNode>[];
11
13
  export declare const optimisedBinaryExpressionToAstNode: (instance: BattleScriptToAST, ctx: BinaryExpressionContext) => OptimisedBinaryExpressionNode;
14
+ export declare const optimisedBinaryExpressionFromAstNode: (instance: BattleScriptFromAST, node: OptimisedBinaryExpressionNode, options?: VisitOptions) => string;
12
15
  //# sourceMappingURL=OptimisedBinaryExpressionNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"OptimisedBinaryExpressionNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/OptimisedBinaryExpressionNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,cAAc,EAAC,MAAM,SAAS,CAAC;AAExE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,uBAAuB,EAAC,MAAM,mDAAmD,CAAC;AAE/F,MAAM,WAAW,6BAA8B,SAAQ,WAAW;IACjE,IAAI,EAAE,6BAA6B,CAAC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,cAAc,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,mCAAmC,EAAE,aAAa,CAAC,6BAA6B,CAAC,EAY5F,CAAC;AAEH,eAAO,MAAM,kCAAkC,GAAI,UAAU,iBAAiB,EAAE,KAAK,uBAAuB,KAAG,6BAQ9G,CAAA"}
1
+ {"version":3,"file":"OptimisedBinaryExpressionNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/OptimisedBinaryExpressionNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,cAAc,EAAC,MAAM,SAAS,CAAC;AAExE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,uBAAuB,EAAC,MAAM,mDAAmD,CAAC;AAC/F,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAEvD,MAAM,WAAW,6BAA8B,SAAQ,WAAW;IACjE,IAAI,EAAE,6BAA6B,CAAC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,cAAc,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,mCAAmC,EAAE,aAAa,CAAC,6BAA6B,CAAC,EAY5F,CAAC;AAEH,eAAO,MAAM,kCAAkC,GAAI,UAAU,iBAAiB,EAAE,KAAK,uBAAuB,KAAG,6BAQ9G,CAAA;AAED,eAAO,MAAM,oCAAoC,GAAI,UAAU,mBAAmB,EAAE,MAAM,6BAA6B,EAAE,UAAS,YAAiB,WAQjJ,CAAA"}
@@ -1,4 +1,6 @@
1
1
  import type { AstNodeBase, AstNodeLayout, DataTypeNode } from "@/types";
2
+ import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
3
+ import type { VisitOptions } from "@/types/VisitOptions";
2
4
  export interface OptimisedMemberExpressionNode extends AstNodeBase {
3
5
  kind: "OPTIMISED_MEMBER_EXPRESSION";
4
6
  name: string;
@@ -6,4 +8,5 @@ export interface OptimisedMemberExpressionNode extends AstNodeBase {
6
8
  type?: DataTypeNode;
7
9
  }
8
10
  export declare const OptimisedMemberExpressionNodeLayout: AstNodeLayout<OptimisedMemberExpressionNode>[];
11
+ export declare const optimisedMemberExpressionFromAstNode: (instance: BattleScriptFromAST, node: OptimisedMemberExpressionNode, options?: VisitOptions) => string;
9
12
  //# sourceMappingURL=OptimisedMemberExpressionNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"OptimisedMemberExpressionNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/OptimisedMemberExpressionNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,YAAY,EAAC,MAAM,SAAS,CAAC;AAGtE,MAAM,WAAW,6BAA8B,SAAQ,WAAW;IACjE,IAAI,EAAE,6BAA6B,CAAC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,GAAG,GAAG,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,YAAY,CAAC;CACpB;AAED,eAAO,MAAM,mCAAmC,EAAE,aAAa,CAAC,6BAA6B,CAAC,EAS5F,CAAC"}
1
+ {"version":3,"file":"OptimisedMemberExpressionNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/OptimisedMemberExpressionNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,YAAY,EAAC,MAAM,SAAS,CAAC;AAEtE,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAEvD,MAAM,WAAW,6BAA8B,SAAQ,WAAW;IACjE,IAAI,EAAE,6BAA6B,CAAC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,GAAG,GAAG,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,YAAY,CAAC;CACpB;AAED,eAAO,MAAM,mCAAmC,EAAE,aAAa,CAAC,6BAA6B,CAAC,EAS5F,CAAC;AAEH,eAAO,MAAM,oCAAoC,GAAI,UAAU,mBAAmB,EAAE,MAAM,6BAA6B,EAAE,UAAS,YAAiB,WAIjJ,CAAA"}
@@ -1,6 +1,8 @@
1
1
  import type { AstNodeBase, AstNodeLayout, UpdateOperator } from "@/types";
2
2
  import type { BattleScriptToAST } from "@/services";
3
3
  import type { UpdateExpressionContext } from "@/services/grammar/ts/language/BattleScriptParser";
4
+ import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
5
+ import type { VisitOptions } from "@/types/VisitOptions";
4
6
  export interface OptimisedUpdateExpressionNode extends AstNodeBase {
5
7
  kind: "OPTIMISED_UPDATE_EXPRESSION";
6
8
  argument: string;
@@ -9,4 +11,5 @@ export interface OptimisedUpdateExpressionNode extends AstNodeBase {
9
11
  }
10
12
  export declare const OptimisedUpdateExpressionNodeLayout: AstNodeLayout<OptimisedUpdateExpressionNode>[];
11
13
  export declare const optimisedUpdateExpressionToAstNode: (instance: BattleScriptToAST, ctx: UpdateExpressionContext) => OptimisedUpdateExpressionNode;
14
+ export declare const optimisedUpdateExpressionFromAstNode: (instance: BattleScriptFromAST, node: OptimisedUpdateExpressionNode, options?: VisitOptions) => string;
12
15
  //# sourceMappingURL=OptimisedUpdateExpressionNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"OptimisedUpdateExpressionNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/OptimisedUpdateExpressionNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,cAAc,EAAC,MAAM,SAAS,CAAC;AAExE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,uBAAuB,EAAC,MAAM,mDAAmD,CAAC;AAE/F,MAAM,WAAW,6BAA8B,SAAQ,WAAW;IACjE,IAAI,EAAE,6BAA6B,CAAC;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,cAAc,CAAC;IACzB,MAAM,EAAE,OAAO,CAAC;CAChB;AAED,eAAO,MAAM,mCAAmC,EAAE,aAAa,CAAC,6BAA6B,CAAC,EAS5F,CAAC;AAEH,eAAO,MAAM,kCAAkC,GAAI,UAAU,iBAAiB,EAAE,KAAK,uBAAuB,KAAG,6BAe9G,CAAA"}
1
+ {"version":3,"file":"OptimisedUpdateExpressionNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/OptimisedUpdateExpressionNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,cAAc,EAAC,MAAM,SAAS,CAAC;AAExE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,uBAAuB,EAAC,MAAM,mDAAmD,CAAC;AAC/F,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAEvD,MAAM,WAAW,6BAA8B,SAAQ,WAAW;IACjE,IAAI,EAAE,6BAA6B,CAAC;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,cAAc,CAAC;IACzB,MAAM,EAAE,OAAO,CAAC;CAChB;AAED,eAAO,MAAM,mCAAmC,EAAE,aAAa,CAAC,6BAA6B,CAAC,EAS5F,CAAC;AAEH,eAAO,MAAM,kCAAkC,GAAI,UAAU,iBAAiB,EAAE,KAAK,uBAAuB,KAAG,6BAe9G,CAAA;AAED,eAAO,MAAM,oCAAoC,GAAI,UAAU,mBAAmB,EAAE,MAAM,6BAA6B,EAAE,UAAS,YAAiB,WAKjJ,CAAA"}
@@ -1,10 +1,13 @@
1
1
  import type { AstNodeBase, AstNodeLayout, ProgramPropertyDeclarationNode } from "@/types";
2
2
  import type { ProgramDeclarationContext } from "@/services/grammar/ts/language/BattleScriptParser";
3
3
  import type { BattleScriptToAST } from "@/services";
4
+ import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
5
+ import type { VisitOptions } from "@/types/VisitOptions";
4
6
  export interface ProgramDeclarationNode extends AstNodeBase {
5
7
  kind: "PROGRAM";
6
8
  properties: ProgramPropertyDeclarationNode[];
7
9
  }
8
10
  export declare const ProgramDeclarationNodeLayout: AstNodeLayout<ProgramDeclarationNode>[];
9
11
  export declare const programDeclarationToAstNode: (instance: BattleScriptToAST, ctx: ProgramDeclarationContext) => ProgramDeclarationNode;
12
+ export declare const programDeclarationFromAstNode: (instance: BattleScriptFromAST, node: ProgramDeclarationNode, options?: VisitOptions) => string;
10
13
  //# sourceMappingURL=ProgramDeclarationNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProgramDeclarationNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/ProgramDeclarationNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,8BAA8B,EAAC,MAAM,SAAS,CAAC;AAExF,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,mDAAmD,CAAC;AACjG,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAElD,MAAM,WAAW,sBAAuB,SAAQ,WAAW;IAC1D,IAAI,EAAE,SAAS,CAAC;IAChB,UAAU,EAAE,8BAA8B,EAAE,CAAC;CAC7C;AAED,eAAO,MAAM,4BAA4B,EAAE,aAAa,CAAC,sBAAsB,CAAC,EAM9E,CAAC;AAEH,eAAO,MAAM,2BAA2B,GAAI,UAAU,iBAAiB,EAAE,KAAK,yBAAyB,KAAG,sBAMzG,CAAA"}
1
+ {"version":3,"file":"ProgramDeclarationNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/ProgramDeclarationNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,8BAA8B,EAAC,MAAM,SAAS,CAAC;AAExF,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,mDAAmD,CAAC;AACjG,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAGvD,MAAM,WAAW,sBAAuB,SAAQ,WAAW;IAC1D,IAAI,EAAE,SAAS,CAAC;IAChB,UAAU,EAAE,8BAA8B,EAAE,CAAC;CAC7C;AAED,eAAO,MAAM,4BAA4B,EAAE,aAAa,CAAC,sBAAsB,CAAC,EAM9E,CAAC;AAEH,eAAO,MAAM,2BAA2B,GAAI,UAAU,iBAAiB,EAAE,KAAK,yBAAyB,KAAG,sBAMzG,CAAA;AAED,eAAO,MAAM,6BAA6B,GAAI,UAAU,mBAAmB,EAAE,MAAM,sBAAsB,EAAE,UAAS,YAAiB,WAUnI,CAAA"}
@@ -1,6 +1,8 @@
1
1
  import type { AstNodeBase, AstNodeLayout, IdentifierNode, LiteralUnion } from "@/types";
2
2
  import type { BattleScriptToAST } from "@/services";
3
3
  import type { ProgramPropertyContext } from "@/services/grammar/ts/language/BattleScriptParser";
4
+ import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
5
+ import type { VisitOptions } from "@/types/VisitOptions";
4
6
  export interface ProgramPropertyDeclarationNode extends AstNodeBase {
5
7
  kind: "PROGRAM_PROPERTY";
6
8
  key: IdentifierNode;
@@ -8,4 +10,5 @@ export interface ProgramPropertyDeclarationNode extends AstNodeBase {
8
10
  }
9
11
  export declare const ProgramPropertyDeclarationNodeLayout: AstNodeLayout<ProgramPropertyDeclarationNode>[];
10
12
  export declare const programPropertyToAstNode: (instance: BattleScriptToAST, ctx: ProgramPropertyContext) => ProgramPropertyDeclarationNode;
13
+ export declare const programPropertyDeclarationFromAstNode: (instance: BattleScriptFromAST, node: ProgramPropertyDeclarationNode, options?: VisitOptions) => string;
11
14
  //# sourceMappingURL=ProgramPropertyDeclarationNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProgramPropertyDeclarationNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/ProgramPropertyDeclarationNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,YAAY,EAAC,MAAM,SAAS,CAAC;AAEtF,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,sBAAsB,EAAC,MAAM,mDAAmD,CAAC;AAE9F,MAAM,WAAW,8BAA+B,SAAQ,WAAW;IAClE,IAAI,EAAE,kBAAkB,CAAC;IACzB,GAAG,EAAE,cAAc,CAAC;IACpB,KAAK,EAAE,cAAc,GAAG,YAAY,CAAC;CACrC;AAED,eAAO,MAAM,oCAAoC,EAAE,aAAa,CAAC,8BAA8B,CAAC,EAS9F,CAAC;AAEH,eAAO,MAAM,wBAAwB,GAAI,UAAU,iBAAiB,EAAE,KAAK,sBAAsB,KAAG,8BAQnG,CAAA"}
1
+ {"version":3,"file":"ProgramPropertyDeclarationNode.d.ts","sourceRoot":"","sources":["../../../../types/ast/nodes/ProgramPropertyDeclarationNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,YAAY,EAAC,MAAM,SAAS,CAAC;AAEtF,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAC,sBAAsB,EAAC,MAAM,mDAAmD,CAAC;AAC9F,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAEvD,MAAM,WAAW,8BAA+B,SAAQ,WAAW;IAClE,IAAI,EAAE,kBAAkB,CAAC;IACzB,GAAG,EAAE,cAAc,CAAC;IACpB,KAAK,EAAE,cAAc,GAAG,YAAY,CAAC;CACrC;AAED,eAAO,MAAM,oCAAoC,EAAE,aAAa,CAAC,8BAA8B,CAAC,EAS9F,CAAC;AAEH,eAAO,MAAM,wBAAwB,GAAI,UAAU,iBAAiB,EAAE,KAAK,sBAAsB,KAAG,8BAQnG,CAAA;AAED,eAAO,MAAM,qCAAqC,GAAI,UAAU,mBAAmB,EAAE,MAAM,8BAA8B,EAAE,UAAS,YAAiB,WAQnJ,CAAA"}
@@ -0,0 +1,16 @@
1
+ import type { AstNodeBase, AstNodeLayout, LiteralStringNode } from "@/types";
2
+ import type { BattleScriptToAST } from "@/services";
3
+ import type { ProtocolDeclarationContext } from "@/services/grammar/ts/language/BattleScriptParser";
4
+ import type { ProtocolBodyUnion } from "@/types/ast/unions/ProtocolBodyUnion";
5
+ import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
6
+ import type { VisitOptions } from "@/types/VisitOptions";
7
+ export interface ProtocolDeclarationNode extends AstNodeBase {
8
+ kind: "PROTOCOL_DECLARATION";
9
+ name: LiteralStringNode;
10
+ transport: LiteralStringNode;
11
+ body: ProtocolBodyUnion[];
12
+ }
13
+ export declare const ProtocolDeclarationNodeLayout: AstNodeLayout<ProtocolDeclarationNode>[];
14
+ export declare const protocolDeclarationToAstNode: (instance: BattleScriptToAST, ctx: ProtocolDeclarationContext) => ProtocolDeclarationNode;
15
+ export declare const protocolDeclarationFromAstNode: (instance: BattleScriptFromAST, node: ProtocolDeclarationNode, options?: VisitOptions) => string;
16
+ //# sourceMappingURL=ProtocolDeclarationNode.d.ts.map