solc-typed-ast 9.1.0 → 9.1.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 (69) hide show
  1. package/dist/ast/definitions.d.ts +1 -1
  2. package/dist/ast/definitions.d.ts.map +1 -1
  3. package/dist/ast/definitions.js +18 -7
  4. package/dist/ast/definitions.js.map +1 -1
  5. package/dist/ast/documentation.d.ts +23 -0
  6. package/dist/ast/documentation.d.ts.map +1 -0
  7. package/dist/ast/documentation.js +91 -0
  8. package/dist/ast/documentation.js.map +1 -0
  9. package/dist/ast/implementation/declaration/contract_definition.d.ts +14 -2
  10. package/dist/ast/implementation/declaration/contract_definition.d.ts.map +1 -1
  11. package/dist/ast/implementation/declaration/contract_definition.js +17 -23
  12. package/dist/ast/implementation/declaration/contract_definition.js.map +1 -1
  13. package/dist/ast/implementation/statement/block.d.ts +3 -2
  14. package/dist/ast/implementation/statement/block.d.ts.map +1 -1
  15. package/dist/ast/implementation/statement/block.js +1 -1
  16. package/dist/ast/implementation/statement/block.js.map +1 -1
  17. package/dist/ast/implementation/statement/do_while_statement.js +1 -1
  18. package/dist/ast/implementation/statement/do_while_statement.js.map +1 -1
  19. package/dist/ast/implementation/statement/emit_statement.js +1 -1
  20. package/dist/ast/implementation/statement/emit_statement.js.map +1 -1
  21. package/dist/ast/implementation/statement/expression_statement.js +1 -1
  22. package/dist/ast/implementation/statement/expression_statement.js.map +1 -1
  23. package/dist/ast/implementation/statement/for_statement.d.ts.map +1 -1
  24. package/dist/ast/implementation/statement/for_statement.js +1 -1
  25. package/dist/ast/implementation/statement/for_statement.js.map +1 -1
  26. package/dist/ast/implementation/statement/if_statement.js +1 -1
  27. package/dist/ast/implementation/statement/if_statement.js.map +1 -1
  28. package/dist/ast/implementation/statement/return.js +1 -1
  29. package/dist/ast/implementation/statement/return.js.map +1 -1
  30. package/dist/ast/implementation/statement/revert_statement.js +1 -1
  31. package/dist/ast/implementation/statement/revert_statement.js.map +1 -1
  32. package/dist/ast/implementation/statement/statement.d.ts +20 -4
  33. package/dist/ast/implementation/statement/statement.d.ts.map +1 -1
  34. package/dist/ast/implementation/statement/statement.js +30 -0
  35. package/dist/ast/implementation/statement/statement.js.map +1 -1
  36. package/dist/ast/implementation/statement/try_catch_clause.js +1 -1
  37. package/dist/ast/implementation/statement/try_catch_clause.js.map +1 -1
  38. package/dist/ast/implementation/statement/try_statement.js +1 -1
  39. package/dist/ast/implementation/statement/try_statement.js.map +1 -1
  40. package/dist/ast/implementation/statement/unchecked_block.d.ts +3 -2
  41. package/dist/ast/implementation/statement/unchecked_block.d.ts.map +1 -1
  42. package/dist/ast/implementation/statement/unchecked_block.js +1 -1
  43. package/dist/ast/implementation/statement/unchecked_block.js.map +1 -1
  44. package/dist/ast/implementation/statement/variable_declaration_statement.js +1 -1
  45. package/dist/ast/implementation/statement/variable_declaration_statement.js.map +1 -1
  46. package/dist/ast/implementation/statement/while_statement.js +1 -1
  47. package/dist/ast/implementation/statement/while_statement.js.map +1 -1
  48. package/dist/ast/index.d.ts +1 -0
  49. package/dist/ast/index.d.ts.map +1 -1
  50. package/dist/ast/index.js +1 -0
  51. package/dist/ast/index.js.map +1 -1
  52. package/dist/ast/postprocessing/structured_documentation_reconstruction.d.ts +10 -2
  53. package/dist/ast/postprocessing/structured_documentation_reconstruction.d.ts.map +1 -1
  54. package/dist/ast/postprocessing/structured_documentation_reconstruction.js +103 -15
  55. package/dist/ast/postprocessing/structured_documentation_reconstruction.js.map +1 -1
  56. package/dist/ast/writing/ast_mapping.d.ts.map +1 -1
  57. package/dist/ast/writing/ast_mapping.js +65 -28
  58. package/dist/ast/writing/ast_mapping.js.map +1 -1
  59. package/dist/compile/import_resolver.d.ts +2 -1
  60. package/dist/compile/import_resolver.d.ts.map +1 -1
  61. package/dist/compile/import_resolver.js +15 -2
  62. package/dist/compile/import_resolver.js.map +1 -1
  63. package/dist/compile/utils.d.ts +1 -0
  64. package/dist/compile/utils.d.ts.map +1 -1
  65. package/dist/compile/utils.js +20 -6
  66. package/dist/compile/utils.js.map +1 -1
  67. package/dist/compile/version.js +1 -1
  68. package/dist/compile/version.js.map +1 -1
  69. package/package.json +1 -1
@@ -33,5 +33,5 @@ export declare type ScopeNode = SourceUnit | ContractDefinition | FunctionDefini
33
33
  * functions/events with the same name but different arguments. In all other
34
34
  * cases the returned set should have either 0 or 1 elements.
35
35
  */
36
- export declare function resolveAny(name: string, ctx: ASTNode, version: string, inclusive?: boolean): Set<AnyResolvable>;
36
+ export declare function resolveAny(name: string, ctx: ASTNode, version: string, inclusive?: boolean, ignoreVisiblity?: boolean): Set<AnyResolvable>;
37
37
  //# sourceMappingURL=definitions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../src/ast/definitions.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,8CAA8C,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,+CAA+C,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,+CAA+C,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AACtF,OAAO,EAAE,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AACtF,OAAO,EAAE,gBAAgB,EAAE,MAAM,gDAAgD,CAAC;AAClF,OAAO,EAAE,8BAA8B,EAAE,MAAM,iEAAiE,CAAC;AACjH,OAAO,EAAE,mBAAmB,EAAE,MAAM,mDAAmD,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EACH,KAAK,EAEL,cAAc,EACd,cAAc,EACd,4BAA4B,EAC/B,MAAM,4BAA4B,CAAC;AAEpC;;GAEG;AACH,oBAAY,aAAa,GACnB,mBAAmB,GACnB,kBAAkB,GAClB,kBAAkB,GAClB,eAAe,GACf,eAAe,GACf,gBAAgB,GAChB,cAAc,GACd,kBAAkB,GAClB,8BAA8B,GAC9B,eAAe,CAAC;AAEtB;;GAEG;AACH,oBAAY,SAAS,GACf,UAAU,GACV,kBAAkB,GAClB,kBAAkB,GAClB,kBAAkB,GAClB,4BAA4B,GAC5B,KAAK,GACL,cAAc,GACd,cAAc,CAAC;AAmRrB;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,UAAU,CACtB,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,OAAO,EACZ,OAAO,EAAE,MAAM,EACf,SAAS,UAAQ,GAClB,GAAG,CAAC,aAAa,CAAC,CAuGpB"}
1
+ {"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../src/ast/definitions.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,8CAA8C,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,+CAA+C,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,+CAA+C,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AACtF,OAAO,EAAE,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AACtF,OAAO,EAAE,gBAAgB,EAAE,MAAM,gDAAgD,CAAC;AAClF,OAAO,EAAE,8BAA8B,EAAE,MAAM,iEAAiE,CAAC;AACjH,OAAO,EAAE,mBAAmB,EAAE,MAAM,mDAAmD,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EACH,KAAK,EAEL,cAAc,EACd,cAAc,EACd,4BAA4B,EAC/B,MAAM,4BAA4B,CAAC;AAEpC;;GAEG;AACH,oBAAY,aAAa,GACnB,mBAAmB,GACnB,kBAAkB,GAClB,kBAAkB,GAClB,eAAe,GACf,eAAe,GACf,gBAAgB,GAChB,cAAc,GACd,kBAAkB,GAClB,8BAA8B,GAC9B,eAAe,CAAC;AAEtB;;GAEG;AACH,oBAAY,SAAS,GACf,UAAU,GACV,kBAAkB,GAClB,kBAAkB,GAClB,kBAAkB,GAClB,4BAA4B,GAC5B,KAAK,GACL,cAAc,GACd,cAAc,CAAC;AAkSrB;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,UAAU,CACtB,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,OAAO,EACZ,OAAO,EAAE,MAAM,EACf,SAAS,UAAQ,EACjB,eAAe,UAAQ,GACxB,GAAG,CAAC,aAAa,CAAC,CAuGpB"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.resolveAny = void 0;
4
4
  const semver_1 = require("semver");
5
+ const _1 = require(".");
5
6
  const misc_1 = require("../misc");
6
7
  const abi_1 = require("../types/abi");
7
8
  const constants_1 = require("./constants");
@@ -109,7 +110,7 @@ function* lookupInSourceUnit(name, scope, visitedUnits) {
109
110
  else if (child.vSymbolAliases.length === 0) {
110
111
  // import "..."
111
112
  // @todo maybe its better to go through child.vSourceUnit.vExportedSymbols here?
112
- yield* lookupInScope(name, child.vSourceUnit, visitedUnits);
113
+ yield* lookupInScope(name, child.vSourceUnit, visitedUnits, false);
113
114
  }
114
115
  else {
115
116
  // `import {<name>} from "..."` or `import {a as <name>} from "..."`
@@ -140,7 +141,7 @@ function* lookupInSourceUnit(name, scope, visitedUnits) {
140
141
  /**
141
142
  * Lookup the definition corresponding to `name` in the `ContractDefinition` `scope`. Yield all matches.
142
143
  */
143
- function* lookupInContractDefinition(name, scope) {
144
+ function* lookupInContractDefinition(name, scope, ignoreVisiblity) {
144
145
  const overridenSigHashes = new Set();
145
146
  for (const base of scope.vLinearizedBaseContracts) {
146
147
  for (const child of base.children) {
@@ -153,6 +154,16 @@ function* lookupInContractDefinition(name, scope) {
153
154
  child instanceof error_definition_1.ErrorDefinition ||
154
155
  child instanceof user_defined_value_type_definition_1.UserDefinedValueTypeDefinition) &&
155
156
  child.name === name) {
157
+ // If we are not ignoring visibility, and the node is a private function or state var
158
+ // in a base class different from scope, then ignore it
159
+ if (!ignoreVisiblity &&
160
+ ((child instanceof variable_declaration_1.VariableDeclaration &&
161
+ child.visibility === constants_1.StateVariableVisibility.Private) ||
162
+ (child instanceof function_definition_1.FunctionDefinition &&
163
+ child.visibility === _1.FunctionVisibility.Private)) &&
164
+ base !== scope) {
165
+ continue;
166
+ }
156
167
  let sigHash;
157
168
  if (child instanceof function_definition_1.FunctionDefinition) {
158
169
  // Its a safe to assume V2 as its backward-compatible and
@@ -209,13 +220,13 @@ function* lookupInBlock(name, scope) {
209
220
  * 1. Multiple FunctionDefinitions (and potentially VariableDeclarations corresponding to public state variables) with the same name and DIFFERENT SIGNATURES
210
221
  * 2. Multiple EventDefinitions with the same name and different signatures.
211
222
  */
212
- function lookupInScope(name, scope, visitedUnits = new Set()) {
223
+ function lookupInScope(name, scope, visitedUnits = new Set(), ignoreVisiblity) {
213
224
  let results;
214
225
  if (scope instanceof meta_1.SourceUnit) {
215
226
  results = lookupInSourceUnit(name, scope, visitedUnits);
216
227
  }
217
228
  else if (scope instanceof contract_definition_1.ContractDefinition) {
218
- results = lookupInContractDefinition(name, scope);
229
+ results = lookupInContractDefinition(name, scope, ignoreVisiblity);
219
230
  }
220
231
  else if (scope instanceof function_definition_1.FunctionDefinition) {
221
232
  results = lookupInFunctionDefinition(name, scope);
@@ -254,7 +265,7 @@ function lookupInScope(name, scope, visitedUnits = new Set()) {
254
265
  * functions/events with the same name but different arguments. In all other
255
266
  * cases the returned set should have either 0 or 1 elements.
256
267
  */
257
- function resolveAny(name, ctx, version, inclusive = false) {
268
+ function resolveAny(name, ctx, version, inclusive = false, ignoreVisiblity = false) {
258
269
  let scope = inclusive && isScope(ctx, version) ? ctx : getContainingScope(ctx, version);
259
270
  const elements = name.split(".");
260
271
  for (let i = 0; i < elements.length; i++) {
@@ -264,7 +275,7 @@ function resolveAny(name, ctx, version, inclusive = false) {
264
275
  // If this is the first element (e.g. `A` in `A.B.C`), walk up the
265
276
  // stack of scopes starting from the current context, looking for `A`
266
277
  while (scope !== undefined) {
267
- res = lookupInScope(element, scope);
278
+ res = lookupInScope(element, scope, undefined, ignoreVisiblity);
268
279
  if (res.size > 0) {
269
280
  // Sanity check - when multiple results are found, they must either be overloaded events
270
281
  // or overloaded functions/public state vars.
@@ -295,7 +306,7 @@ function resolveAny(name, ctx, version, inclusive = false) {
295
306
  else {
296
307
  // If this is a later segment (e.g. `B` or `C` in `A.B.C`),
297
308
  // then resolve it recursively in the current scope.
298
- res = resolveAny(element, scope, version, true);
309
+ res = resolveAny(element, scope, version, true, ignoreVisiblity);
299
310
  }
300
311
  // We didn't find anything - return empty set
301
312
  if (res === undefined || res.size === 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/ast/definitions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/ast/definitions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import { ASTNode, ASTNodeWithChildren } from "./ast_node";
2
+ import { StructuredDocumentation } from "./implementation/meta";
3
+ export interface WithPrecedingDocs {
4
+ documentation?: string | StructuredDocumentation;
5
+ /**
6
+ * This field is used as a storage field for string,
7
+ * if string is set as value for `documentation`.
8
+ */
9
+ docString?: string;
10
+ }
11
+ export interface WithDanglingDocs {
12
+ danglingDocumentation?: string | StructuredDocumentation;
13
+ /**
14
+ * This field is used as a storage field for string,
15
+ * if string is set as value for `danglingDocumentation`.
16
+ */
17
+ danglingDocString?: string;
18
+ }
19
+ export declare function getDocumentation(node: WithPrecedingDocs & ASTNodeWithChildren<ASTNode>): string | StructuredDocumentation | undefined;
20
+ export declare function setDocumentation(node: WithPrecedingDocs & ASTNodeWithChildren<ASTNode>, value: string | StructuredDocumentation | undefined): void;
21
+ export declare function getDanglingDocumentation(node: WithDanglingDocs & ASTNodeWithChildren<ASTNode>): string | StructuredDocumentation | undefined;
22
+ export declare function setDanglingDocumentation(node: WithDanglingDocs & ASTNodeWithChildren<ASTNode>, value: string | StructuredDocumentation | undefined): void;
23
+ //# sourceMappingURL=documentation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentation.d.ts","sourceRoot":"","sources":["../../src/ast/documentation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,MAAM,WAAW,iBAAiB;IAC9B,aAAa,CAAC,EAAE,MAAM,GAAG,uBAAuB,CAAC;IAEjD;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC7B,qBAAqB,CAAC,EAAE,MAAM,GAAG,uBAAuB,CAAC;IAEzD;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,wBAAgB,gBAAgB,CAC5B,IAAI,EAAE,iBAAiB,GAAG,mBAAmB,CAAC,OAAO,CAAC,GACvD,MAAM,GAAG,uBAAuB,GAAG,SAAS,CAyB9C;AAED,wBAAgB,gBAAgB,CAC5B,IAAI,EAAE,iBAAiB,GAAG,mBAAmB,CAAC,OAAO,CAAC,EACtD,KAAK,EAAE,MAAM,GAAG,uBAAuB,GAAG,SAAS,GACpD,IAAI,CAoBN;AAED,wBAAgB,wBAAwB,CACpC,IAAI,EAAE,gBAAgB,GAAG,mBAAmB,CAAC,OAAO,CAAC,GACtD,MAAM,GAAG,uBAAuB,GAAG,SAAS,CAyB9C;AAED,wBAAgB,wBAAwB,CACpC,IAAI,EAAE,gBAAgB,GAAG,mBAAmB,CAAC,OAAO,CAAC,EACrD,KAAK,EAAE,MAAM,GAAG,uBAAuB,GAAG,SAAS,GACpD,IAAI,CAoBN"}
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setDanglingDocumentation = exports.getDanglingDocumentation = exports.setDocumentation = exports.getDocumentation = void 0;
4
+ const meta_1 = require("./implementation/meta");
5
+ function getDocumentation(node) {
6
+ if (node.docString !== undefined) {
7
+ return node.docString;
8
+ }
9
+ const ownLoc = node.sourceInfo;
10
+ const children = node.children;
11
+ for (let c = 0; c < children.length; c++) {
12
+ const child = children[c];
13
+ if (child instanceof meta_1.StructuredDocumentation) {
14
+ const childLoc = child.sourceInfo;
15
+ /**
16
+ * Note that preceding documentation nodes are
17
+ * EXCLUDED from source range of parent node.
18
+ */
19
+ if (childLoc.offset <= ownLoc.offset) {
20
+ return child;
21
+ }
22
+ }
23
+ }
24
+ return undefined;
25
+ }
26
+ exports.getDocumentation = getDocumentation;
27
+ function setDocumentation(node, value) {
28
+ const old = node.documentation;
29
+ if (value instanceof meta_1.StructuredDocumentation) {
30
+ node.docString = undefined;
31
+ if (old instanceof meta_1.StructuredDocumentation) {
32
+ if (value !== old) {
33
+ node.replaceChild(value, old);
34
+ }
35
+ }
36
+ else {
37
+ node.insertAtBeginning(value);
38
+ }
39
+ }
40
+ else {
41
+ if (old instanceof meta_1.StructuredDocumentation) {
42
+ node.removeChild(old);
43
+ }
44
+ node.docString = value;
45
+ }
46
+ }
47
+ exports.setDocumentation = setDocumentation;
48
+ function getDanglingDocumentation(node) {
49
+ if (node.danglingDocString !== undefined) {
50
+ return node.danglingDocString;
51
+ }
52
+ const ownLoc = node.sourceInfo;
53
+ const children = node.children;
54
+ for (let c = children.length - 1; c >= 0; c--) {
55
+ const child = children[c];
56
+ if (child instanceof meta_1.StructuredDocumentation) {
57
+ const childLoc = child.sourceInfo;
58
+ /**
59
+ * Note that preceding documentation nodes are
60
+ * INCLUDED from source range of parent node.
61
+ */
62
+ if (childLoc.offset > ownLoc.offset) {
63
+ return child;
64
+ }
65
+ }
66
+ }
67
+ return undefined;
68
+ }
69
+ exports.getDanglingDocumentation = getDanglingDocumentation;
70
+ function setDanglingDocumentation(node, value) {
71
+ const old = node.danglingDocumentation;
72
+ if (value instanceof meta_1.StructuredDocumentation) {
73
+ node.danglingDocString = undefined;
74
+ if (old instanceof meta_1.StructuredDocumentation) {
75
+ if (value !== old) {
76
+ node.replaceChild(value, old);
77
+ }
78
+ }
79
+ else {
80
+ node.appendChild(value);
81
+ }
82
+ }
83
+ else {
84
+ if (old instanceof meta_1.StructuredDocumentation) {
85
+ node.removeChild(old);
86
+ }
87
+ node.danglingDocString = value;
88
+ }
89
+ }
90
+ exports.setDanglingDocumentation = setDanglingDocumentation;
91
+ //# sourceMappingURL=documentation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentation.js","sourceRoot":"","sources":["../../src/ast/documentation.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { ABIEncoderVersion } from "../../../types/abi";
2
2
  import { ASTNode, ASTNodeWithChildren } from "../../ast_node";
3
3
  import { ContractKind } from "../../constants";
4
+ import { WithDanglingDocs, WithPrecedingDocs } from "../../documentation";
4
5
  import { InheritanceSpecifier } from "../meta/inheritance_specifier";
5
6
  import { SourceUnit } from "../meta/source_unit";
6
7
  import { StructuredDocumentation } from "../meta/structured_documentation";
@@ -13,8 +14,9 @@ import { ModifierDefinition } from "./modifier_definition";
13
14
  import { StructDefinition } from "./struct_definition";
14
15
  import { UserDefinedValueTypeDefinition } from "./user_defined_value_type_definition";
15
16
  import { VariableDeclaration } from "./variable_declaration";
16
- export declare class ContractDefinition extends ASTNodeWithChildren<ASTNode> {
17
- private docString?;
17
+ export declare class ContractDefinition extends ASTNodeWithChildren<ASTNode> implements WithPrecedingDocs, WithDanglingDocs {
18
+ docString?: string;
19
+ danglingDocString?: string;
18
20
  /**
19
21
  * The contract name
20
22
  */
@@ -61,6 +63,16 @@ export declare class ContractDefinition extends ASTNodeWithChildren<ASTNode> {
61
63
  */
62
64
  get documentation(): string | StructuredDocumentation | undefined;
63
65
  set documentation(value: string | StructuredDocumentation | undefined);
66
+ /**
67
+ * Optional documentation that is dangling in the source fragment,
68
+ * that is after end of last child and before the end of the current node.
69
+ *
70
+ * It is:
71
+ * - Is `undefined` when not detected.
72
+ * - Is type of `string` for compatibility reasons.
73
+ */
74
+ get danglingDocumentation(): string | StructuredDocumentation | undefined;
75
+ set danglingDocumentation(value: string | StructuredDocumentation | undefined);
64
76
  /**
65
77
  * Reference to its scoped source unit
66
78
  */
@@ -1 +1 @@
1
- {"version":3,"file":"contract_definition.d.ts","sourceRoot":"","sources":["../../../../src/ast/implementation/declaration/contract_definition.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract_definition.d.ts","sourceRoot":"","sources":["../../../../src/ast/implementation/declaration/contract_definition.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ContractDefinition = void 0;
4
4
  const ast_node_1 = require("../../ast_node");
5
5
  const constants_1 = require("../../constants");
6
+ const documentation_1 = require("../../documentation");
6
7
  const inheritance_specifier_1 = require("../meta/inheritance_specifier");
7
- const structured_documentation_1 = require("../meta/structured_documentation");
8
8
  const using_for_directive_1 = require("../meta/using_for_directive");
9
9
  const enum_definition_1 = require("./enum_definition");
10
10
  const error_definition_1 = require("./error_definition");
@@ -39,30 +39,24 @@ class ContractDefinition extends ast_node_1.ASTNodeWithChildren {
39
39
  * - Is instance of `StructuredDocumentation` when specified and compiler version is `0.6.3` or newer.
40
40
  */
41
41
  get documentation() {
42
- if (this.docString !== undefined) {
43
- return this.docString;
44
- }
45
- return this.ownChildren.find((node) => node instanceof structured_documentation_1.StructuredDocumentation);
42
+ return (0, documentation_1.getDocumentation)(this);
46
43
  }
47
44
  set documentation(value) {
48
- const old = this.documentation;
49
- if (value instanceof structured_documentation_1.StructuredDocumentation) {
50
- this.docString = undefined;
51
- if (old instanceof structured_documentation_1.StructuredDocumentation) {
52
- if (value !== old) {
53
- this.replaceChild(value, old);
54
- }
55
- }
56
- else {
57
- this.insertAtBeginning(value);
58
- }
59
- }
60
- else {
61
- if (old instanceof structured_documentation_1.StructuredDocumentation) {
62
- this.removeChild(old);
63
- }
64
- this.docString = value;
65
- }
45
+ (0, documentation_1.setDocumentation)(this, value);
46
+ }
47
+ /**
48
+ * Optional documentation that is dangling in the source fragment,
49
+ * that is after end of last child and before the end of the current node.
50
+ *
51
+ * It is:
52
+ * - Is `undefined` when not detected.
53
+ * - Is type of `string` for compatibility reasons.
54
+ */
55
+ get danglingDocumentation() {
56
+ return (0, documentation_1.getDanglingDocumentation)(this);
57
+ }
58
+ set danglingDocumentation(value) {
59
+ (0, documentation_1.setDanglingDocumentation)(this, value);
66
60
  }
67
61
  /**
68
62
  * Reference to its scoped source unit
@@ -1 +1 @@
1
- {"version":3,"file":"contract_definition.js","sourceRoot":"","sources":["../../../../src/ast/implementation/declaration/contract_definition.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract_definition.js","sourceRoot":"","sources":["../../../../src/ast/implementation/declaration/contract_definition.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,14 @@
1
+ import { ASTNode } from "../../ast_node";
1
2
  import { StructuredDocumentation } from "../meta";
2
3
  import { Statement, StatementWithChildren } from "./statement";
3
4
  /**
4
5
  * Block is a compound statement and it can hold other statements
5
6
  */
6
- export declare class Block extends StatementWithChildren<Statement> {
7
+ export declare class Block extends StatementWithChildren<Statement | StatementWithChildren<ASTNode> | StructuredDocumentation> {
7
8
  constructor(id: number, src: string, statements: Iterable<Statement>, documentation?: string | StructuredDocumentation, raw?: any);
8
9
  /**
9
10
  * An array of the member statements
10
11
  */
11
- get vStatements(): Statement[];
12
+ get vStatements(): Array<Statement | StatementWithChildren<ASTNode>>;
12
13
  }
13
14
  //# sourceMappingURL=block.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../../../../src/ast/implementation/statement/block.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAE/D;;GAEG;AACH,qBAAa,KAAM,SAAQ,qBAAqB,CAAC,SAAS,CAAC;gBAEnD,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,QAAQ,CAAC,SAAS,CAAC,EAC/B,aAAa,CAAC,EAAE,MAAM,GAAG,uBAAuB,EAChD,GAAG,CAAC,EAAE,GAAG;IASb;;OAEG;IACH,IAAI,WAAW,IAAI,SAAS,EAAE,CAE7B;CACJ"}
1
+ {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../../../../src/ast/implementation/statement/block.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAE/D;;GAEG;AACH,qBAAa,KAAM,SAAQ,qBAAqB,CAC5C,SAAS,GAAG,qBAAqB,CAAC,OAAO,CAAC,GAAG,uBAAuB,CACvE;gBAEO,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,QAAQ,CAAC,SAAS,CAAC,EAC/B,aAAa,CAAC,EAAE,MAAM,GAAG,uBAAuB,EAChD,GAAG,CAAC,EAAE,GAAG;IASb;;OAEG;IACH,IAAI,WAAW,IAAI,KAAK,CAAC,SAAS,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAInE;CACJ"}
@@ -16,7 +16,7 @@ class Block extends statement_1.StatementWithChildren {
16
16
  * An array of the member statements
17
17
  */
18
18
  get vStatements() {
19
- return this.ownChildren;
19
+ return this.ownChildren.filter((node) => node instanceof statement_1.Statement || node instanceof statement_1.StatementWithChildren);
20
20
  }
21
21
  }
22
22
  exports.Block = Block;
@@ -1 +1 @@
1
- {"version":3,"file":"block.js","sourceRoot":"","sources":["../../../../src/ast/implementation/statement/block.ts"],"names":[],"mappings":";;;AACA,2CAA+D;AAE/D;;GAEG;AACH,MAAa,KAAM,SAAQ,iCAAgC;IACvD,YACI,EAAU,EACV,GAAW,EACX,UAA+B,EAC/B,aAAgD,EAChD,GAAS;QAET,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;QAEnC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;YAChC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;SAC/B;IACL,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,WAA0B,CAAC;IAC3C,CAAC;CACJ;AArBD,sBAqBC"}
1
+ {"version":3,"file":"block.js","sourceRoot":"","sources":["../../../../src/ast/implementation/statement/block.ts"],"names":[],"mappings":";;;AAEA,2CAA+D;AAE/D;;GAEG;AACH,MAAa,KAAM,SAAQ,iCAE1B;IACG,YACI,EAAU,EACV,GAAW,EACX,UAA+B,EAC/B,aAAgD,EAChD,GAAS;QAET,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;QAEnC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;YAChC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;SAC/B;IACL,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAC1B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,YAAY,qBAAS,IAAI,IAAI,YAAY,iCAAqB,CAC/E,CAAC;IACN,CAAC;CACJ;AAzBD,sBAyBC"}
@@ -10,7 +10,7 @@ class DoWhileStatement extends statement_1.Statement {
10
10
  this.acceptChildren();
11
11
  }
12
12
  get children() {
13
- return this.pickNodes(this.vCondition, this.vBody);
13
+ return this.pickNodes(this.documentation, this.vCondition, this.vBody);
14
14
  }
15
15
  }
16
16
  exports.DoWhileStatement = DoWhileStatement;
@@ -1 +1 @@
1
- {"version":3,"file":"do_while_statement.js","sourceRoot":"","sources":["../../../../src/ast/implementation/statement/do_while_statement.ts"],"names":[],"mappings":";;;AAGA,2CAAwC;AAExC,MAAa,gBAAiB,SAAQ,qBAAS;IAW3C,YACI,EAAU,EACV,GAAW,EACX,SAAqB,EACrB,IAAe,EACf,aAAgD,EAChD,GAAS;QAET,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;QAEnC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAElB,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC;CACJ;AA9BD,4CA8BC"}
1
+ {"version":3,"file":"do_while_statement.js","sourceRoot":"","sources":["../../../../src/ast/implementation/statement/do_while_statement.ts"],"names":[],"mappings":";;;AAGA,2CAAwC;AAExC,MAAa,gBAAiB,SAAQ,qBAAS;IAW3C,YACI,EAAU,EACV,GAAW,EACX,SAAqB,EACrB,IAAe,EACf,aAAgD,EAChD,GAAS;QAET,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;QAEnC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAElB,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3E,CAAC;CACJ;AA9BD,4CA8BC"}
@@ -9,7 +9,7 @@ class EmitStatement extends statement_1.Statement {
9
9
  this.acceptChildren();
10
10
  }
11
11
  get children() {
12
- return this.pickNodes(this.vEventCall);
12
+ return this.pickNodes(this.documentation, this.vEventCall);
13
13
  }
14
14
  }
15
15
  exports.EmitStatement = EmitStatement;
@@ -1 +1 @@
1
- {"version":3,"file":"emit_statement.js","sourceRoot":"","sources":["../../../../src/ast/implementation/statement/emit_statement.ts"],"names":[],"mappings":";;;AAGA,2CAAwC;AAExC,MAAa,aAAc,SAAQ,qBAAS;IAMxC,YACI,EAAU,EACV,GAAW,EACX,SAAuB,EACvB,aAAgD,EAChD,GAAS;QAET,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;QAEnC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAE5B,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC;CACJ;AAvBD,sCAuBC"}
1
+ {"version":3,"file":"emit_statement.js","sourceRoot":"","sources":["../../../../src/ast/implementation/statement/emit_statement.ts"],"names":[],"mappings":";;;AAGA,2CAAwC;AAExC,MAAa,aAAc,SAAQ,qBAAS;IAMxC,YACI,EAAU,EACV,GAAW,EACX,SAAuB,EACvB,aAAgD,EAChD,GAAS;QAET,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;QAEnC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAE5B,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC/D,CAAC;CACJ;AAvBD,sCAuBC"}
@@ -12,7 +12,7 @@ class ExpressionStatement extends statement_1.Statement {
12
12
  this.acceptChildren();
13
13
  }
14
14
  get children() {
15
- return this.pickNodes(this.vExpression);
15
+ return this.pickNodes(this.documentation, this.vExpression);
16
16
  }
17
17
  }
18
18
  exports.ExpressionStatement = ExpressionStatement;
@@ -1 +1 @@
1
- {"version":3,"file":"expression_statement.js","sourceRoot":"","sources":["../../../../src/ast/implementation/statement/expression_statement.ts"],"names":[],"mappings":";;;AAGA,2CAAwC;AAExC;;GAEG;AACH,MAAa,mBAAoB,SAAQ,qBAAS;IAM9C,YACI,EAAU,EACV,GAAW,EACX,UAAsB,EACtB,aAAgD,EAChD,GAAS;QAET,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;QAEnC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAE9B,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC5C,CAAC;CACJ;AAvBD,kDAuBC"}
1
+ {"version":3,"file":"expression_statement.js","sourceRoot":"","sources":["../../../../src/ast/implementation/statement/expression_statement.ts"],"names":[],"mappings":";;;AAGA,2CAAwC;AAExC;;GAEG;AACH,MAAa,mBAAoB,SAAQ,qBAAS;IAM9C,YACI,EAAU,EACV,GAAW,EACX,UAAsB,EACtB,aAAgD,EAChD,GAAS;QAET,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;QAEnC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAE9B,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAChE,CAAC;CACJ;AAvBD,kDAuBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"for_statement.d.ts","sourceRoot":"","sources":["../../../../src/ast/implementation/statement/for_statement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,4BAA4B,EAAE,MAAM,kCAAkC,CAAC;AAEhF,qBAAa,YAAa,SAAQ,SAAS;IACvC;;;OAGG;IACH,yBAAyB,CAAC,EAAE,4BAA4B,GAAG,mBAAmB,CAAC;IAE/E;;OAEG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IAExB;;OAEG;IACH,eAAe,CAAC,EAAE,mBAAmB,CAAC;IAEtC;;OAEG;IACH,KAAK,EAAE,SAAS,CAAC;gBAGb,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,SAAS,EACf,wBAAwB,CAAC,EAAE,4BAA4B,GAAG,mBAAmB,EAC7E,SAAS,CAAC,EAAE,UAAU,EACtB,cAAc,CAAC,EAAE,mBAAmB,EACpC,aAAa,CAAC,EAAE,MAAM,GAAG,uBAAuB,EAChD,GAAG,CAAC,EAAE,GAAG;IAYb,IAAI,QAAQ,IAAI,SAAS,OAAO,EAAE,CAOjC;CACJ"}
1
+ {"version":3,"file":"for_statement.d.ts","sourceRoot":"","sources":["../../../../src/ast/implementation/statement/for_statement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,4BAA4B,EAAE,MAAM,kCAAkC,CAAC;AAEhF,qBAAa,YAAa,SAAQ,SAAS;IACvC;;;OAGG;IACH,yBAAyB,CAAC,EAAE,4BAA4B,GAAG,mBAAmB,CAAC;IAE/E;;OAEG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IAExB;;OAEG;IACH,eAAe,CAAC,EAAE,mBAAmB,CAAC;IAEtC;;OAEG;IACH,KAAK,EAAE,SAAS,CAAC;gBAGb,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,SAAS,EACf,wBAAwB,CAAC,EAAE,4BAA4B,GAAG,mBAAmB,EAC7E,SAAS,CAAC,EAAE,UAAU,EACtB,cAAc,CAAC,EAAE,mBAAmB,EACpC,aAAa,CAAC,EAAE,MAAM,GAAG,uBAAuB,EAChD,GAAG,CAAC,EAAE,GAAG;IAYb,IAAI,QAAQ,IAAI,SAAS,OAAO,EAAE,CAQjC;CACJ"}
@@ -12,7 +12,7 @@ class ForStatement extends statement_1.Statement {
12
12
  this.acceptChildren();
13
13
  }
14
14
  get children() {
15
- return this.pickNodes(this.vInitializationExpression, this.vCondition, this.vLoopExpression, this.vBody);
15
+ return this.pickNodes(this.documentation, this.vInitializationExpression, this.vCondition, this.vLoopExpression, this.vBody);
16
16
  }
17
17
  }
18
18
  exports.ForStatement = ForStatement;
@@ -1 +1 @@
1
- {"version":3,"file":"for_statement.js","sourceRoot":"","sources":["../../../../src/ast/implementation/statement/for_statement.ts"],"names":[],"mappings":";;;AAIA,2CAAwC;AAGxC,MAAa,YAAa,SAAQ,qBAAS;IAsBvC,YACI,EAAU,EACV,GAAW,EACX,IAAe,EACf,wBAA6E,EAC7E,SAAsB,EACtB,cAAoC,EACpC,aAAgD,EAChD,GAAS;QAET,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;QAEnC,IAAI,CAAC,yBAAyB,GAAG,wBAAwB,CAAC;QAC1D,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAElB,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CACjB,IAAI,CAAC,yBAAyB,EAC9B,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,KAAK,CACb,CAAC;IACN,CAAC;CACJ;AAlDD,oCAkDC"}
1
+ {"version":3,"file":"for_statement.js","sourceRoot":"","sources":["../../../../src/ast/implementation/statement/for_statement.ts"],"names":[],"mappings":";;;AAIA,2CAAwC;AAGxC,MAAa,YAAa,SAAQ,qBAAS;IAsBvC,YACI,EAAU,EACV,GAAW,EACX,IAAe,EACf,wBAA6E,EAC7E,SAAsB,EACtB,cAAoC,EACpC,aAAgD,EAChD,GAAS;QAET,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;QAEnC,IAAI,CAAC,yBAAyB,GAAG,wBAAwB,CAAC;QAC1D,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAElB,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CACjB,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,yBAAyB,EAC9B,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,KAAK,CACb,CAAC;IACN,CAAC;CACJ;AAnDD,oCAmDC"}
@@ -11,7 +11,7 @@ class IfStatement extends statement_1.Statement {
11
11
  this.acceptChildren();
12
12
  }
13
13
  get children() {
14
- return this.pickNodes(this.vCondition, this.vTrueBody, this.vFalseBody);
14
+ return this.pickNodes(this.documentation, this.vCondition, this.vTrueBody, this.vFalseBody);
15
15
  }
16
16
  }
17
17
  exports.IfStatement = IfStatement;
@@ -1 +1 @@
1
- {"version":3,"file":"if_statement.js","sourceRoot":"","sources":["../../../../src/ast/implementation/statement/if_statement.ts"],"names":[],"mappings":";;;AAGA,2CAAwC;AAExC,MAAa,WAAY,SAAQ,qBAAS;IAgBtC,YACI,EAAU,EACV,GAAW,EACX,SAAqB,EACrB,QAAmB,EACnB,SAAqB,EACrB,aAAgD,EAChD,GAAS;QAET,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;QAEnC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAE5B,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5E,CAAC;CACJ;AArCD,kCAqCC"}
1
+ {"version":3,"file":"if_statement.js","sourceRoot":"","sources":["../../../../src/ast/implementation/statement/if_statement.ts"],"names":[],"mappings":";;;AAGA,2CAAwC;AAExC,MAAa,WAAY,SAAQ,qBAAS;IAgBtC,YACI,EAAU,EACV,GAAW,EACX,SAAqB,EACrB,QAAmB,EACnB,SAAqB,EACrB,aAAgD,EAChD,GAAS;QAET,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;QAEnC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAE5B,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAChG,CAAC;CACJ;AArCD,kCAqCC"}
@@ -10,7 +10,7 @@ class Return extends statement_1.Statement {
10
10
  this.acceptChildren();
11
11
  }
12
12
  get children() {
13
- return this.pickNodes(this.vExpression);
13
+ return this.pickNodes(this.documentation, this.vExpression);
14
14
  }
15
15
  /**
16
16
  * The parameter list that specifies the return parameters
@@ -1 +1 @@
1
- {"version":3,"file":"return.js","sourceRoot":"","sources":["../../../../src/ast/implementation/statement/return.ts"],"names":[],"mappings":";;;AAIA,2CAAwC;AAExC,MAAa,MAAO,SAAQ,qBAAS;IAWjC,YACI,EAAU,EACV,GAAW,EACX,wBAAgC,EAChC,UAAuB,EACvB,aAAgD,EAChD,GAAS;QAET,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;QAEnC,IAAI,CAAC,wBAAwB,GAAG,wBAAwB,CAAC;QAEzD,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAE9B,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,IAAI,yBAAyB;QACzB,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAkB,CAAC;IACvF,CAAC;IAED,IAAI,yBAAyB,CAAC,KAAoB;QAC9C,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YACvC,MAAM,IAAI,KAAK,CAAC,QAAQ,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,mCAAmC,CAAC,CAAC;SACtF;QAED,IAAI,CAAC,wBAAwB,GAAG,KAAK,CAAC,EAAE,CAAC;IAC7C,CAAC;CACJ;AA9CD,wBA8CC"}
1
+ {"version":3,"file":"return.js","sourceRoot":"","sources":["../../../../src/ast/implementation/statement/return.ts"],"names":[],"mappings":";;;AAIA,2CAAwC;AAExC,MAAa,MAAO,SAAQ,qBAAS;IAWjC,YACI,EAAU,EACV,GAAW,EACX,wBAAgC,EAChC,UAAuB,EACvB,aAAgD,EAChD,GAAS;QAET,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;QAEnC,IAAI,CAAC,wBAAwB,GAAG,wBAAwB,CAAC;QAEzD,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAE9B,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,IAAI,yBAAyB;QACzB,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAkB,CAAC;IACvF,CAAC;IAED,IAAI,yBAAyB,CAAC,KAAoB;QAC9C,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YACvC,MAAM,IAAI,KAAK,CAAC,QAAQ,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,mCAAmC,CAAC,CAAC;SACtF;QAED,IAAI,CAAC,wBAAwB,GAAG,KAAK,CAAC,EAAE,CAAC;IAC7C,CAAC;CACJ;AA9CD,wBA8CC"}
@@ -9,7 +9,7 @@ class RevertStatement extends statement_1.Statement {
9
9
  this.acceptChildren();
10
10
  }
11
11
  get children() {
12
- return this.pickNodes(this.errorCall);
12
+ return this.pickNodes(this.documentation, this.errorCall);
13
13
  }
14
14
  }
15
15
  exports.RevertStatement = RevertStatement;
@@ -1 +1 @@
1
- {"version":3,"file":"revert_statement.js","sourceRoot":"","sources":["../../../../src/ast/implementation/statement/revert_statement.ts"],"names":[],"mappings":";;;AAGA,2CAAwC;AAExC,MAAa,eAAgB,SAAQ,qBAAS;IAM1C,YACI,EAAU,EACV,GAAW,EACX,SAAuB,EACvB,aAAgD,EAChD,GAAS;QAET,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;QAEnC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAE3B,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC1C,CAAC;CACJ;AAvBD,0CAuBC"}
1
+ {"version":3,"file":"revert_statement.js","sourceRoot":"","sources":["../../../../src/ast/implementation/statement/revert_statement.ts"],"names":[],"mappings":";;;AAGA,2CAAwC;AAExC,MAAa,eAAgB,SAAQ,qBAAS;IAM1C,YACI,EAAU,EACV,GAAW,EACX,SAAuB,EACvB,aAAgD,EAChD,GAAS;QAET,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;QAEnC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAE3B,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC9D,CAAC;CACJ;AAvBD,0CAuBC"}