solc-typed-ast 9.1.1 → 10.0.0

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 (78) hide show
  1. package/dist/ast/ast_node_factory.d.ts +0 -7
  2. package/dist/ast/ast_node_factory.d.ts.map +1 -1
  3. package/dist/ast/ast_node_factory.js +0 -12
  4. package/dist/ast/ast_node_factory.js.map +1 -1
  5. package/dist/ast/definitions.d.ts +1 -1
  6. package/dist/ast/definitions.d.ts.map +1 -1
  7. package/dist/ast/definitions.js +18 -7
  8. package/dist/ast/definitions.js.map +1 -1
  9. package/dist/ast/documentation.d.ts +23 -0
  10. package/dist/ast/documentation.d.ts.map +1 -0
  11. package/dist/ast/documentation.js +91 -0
  12. package/dist/ast/documentation.js.map +1 -0
  13. package/dist/ast/implementation/declaration/contract_definition.d.ts +14 -2
  14. package/dist/ast/implementation/declaration/contract_definition.d.ts.map +1 -1
  15. package/dist/ast/implementation/declaration/contract_definition.js +17 -23
  16. package/dist/ast/implementation/declaration/contract_definition.js.map +1 -1
  17. package/dist/ast/implementation/statement/block.d.ts +3 -2
  18. package/dist/ast/implementation/statement/block.d.ts.map +1 -1
  19. package/dist/ast/implementation/statement/block.js +1 -1
  20. package/dist/ast/implementation/statement/block.js.map +1 -1
  21. package/dist/ast/implementation/statement/do_while_statement.js +1 -1
  22. package/dist/ast/implementation/statement/do_while_statement.js.map +1 -1
  23. package/dist/ast/implementation/statement/emit_statement.js +1 -1
  24. package/dist/ast/implementation/statement/emit_statement.js.map +1 -1
  25. package/dist/ast/implementation/statement/expression_statement.js +1 -1
  26. package/dist/ast/implementation/statement/expression_statement.js.map +1 -1
  27. package/dist/ast/implementation/statement/for_statement.d.ts.map +1 -1
  28. package/dist/ast/implementation/statement/for_statement.js +1 -1
  29. package/dist/ast/implementation/statement/for_statement.js.map +1 -1
  30. package/dist/ast/implementation/statement/if_statement.js +1 -1
  31. package/dist/ast/implementation/statement/if_statement.js.map +1 -1
  32. package/dist/ast/implementation/statement/return.js +1 -1
  33. package/dist/ast/implementation/statement/return.js.map +1 -1
  34. package/dist/ast/implementation/statement/revert_statement.js +1 -1
  35. package/dist/ast/implementation/statement/revert_statement.js.map +1 -1
  36. package/dist/ast/implementation/statement/statement.d.ts +20 -4
  37. package/dist/ast/implementation/statement/statement.d.ts.map +1 -1
  38. package/dist/ast/implementation/statement/statement.js +30 -0
  39. package/dist/ast/implementation/statement/statement.js.map +1 -1
  40. package/dist/ast/implementation/statement/try_catch_clause.js +1 -1
  41. package/dist/ast/implementation/statement/try_catch_clause.js.map +1 -1
  42. package/dist/ast/implementation/statement/try_statement.js +1 -1
  43. package/dist/ast/implementation/statement/try_statement.js.map +1 -1
  44. package/dist/ast/implementation/statement/unchecked_block.d.ts +3 -2
  45. package/dist/ast/implementation/statement/unchecked_block.d.ts.map +1 -1
  46. package/dist/ast/implementation/statement/unchecked_block.js +1 -1
  47. package/dist/ast/implementation/statement/unchecked_block.js.map +1 -1
  48. package/dist/ast/implementation/statement/variable_declaration_statement.js +1 -1
  49. package/dist/ast/implementation/statement/variable_declaration_statement.js.map +1 -1
  50. package/dist/ast/implementation/statement/while_statement.js +1 -1
  51. package/dist/ast/implementation/statement/while_statement.js.map +1 -1
  52. package/dist/ast/index.d.ts +1 -0
  53. package/dist/ast/index.d.ts.map +1 -1
  54. package/dist/ast/index.js +1 -0
  55. package/dist/ast/index.js.map +1 -1
  56. package/dist/ast/postprocessing/structured_documentation_reconstruction.d.ts +10 -2
  57. package/dist/ast/postprocessing/structured_documentation_reconstruction.d.ts.map +1 -1
  58. package/dist/ast/postprocessing/structured_documentation_reconstruction.js +103 -15
  59. package/dist/ast/postprocessing/structured_documentation_reconstruction.js.map +1 -1
  60. package/dist/ast/writing/ast_mapping.d.ts.map +1 -1
  61. package/dist/ast/writing/ast_mapping.js +65 -28
  62. package/dist/ast/writing/ast_mapping.js.map +1 -1
  63. package/dist/bin/compile.js +233 -267
  64. package/dist/bin/compile.js.map +1 -1
  65. package/dist/compile/import_resolver.d.ts +6 -3
  66. package/dist/compile/import_resolver.d.ts.map +1 -1
  67. package/dist/compile/import_resolver.js +26 -7
  68. package/dist/compile/import_resolver.js.map +1 -1
  69. package/dist/compile/inference/imports.d.ts.map +1 -1
  70. package/dist/compile/inference/imports.js +10 -7
  71. package/dist/compile/inference/imports.js.map +1 -1
  72. package/dist/compile/utils.d.ts +8 -3
  73. package/dist/compile/utils.d.ts.map +1 -1
  74. package/dist/compile/utils.js +20 -10
  75. package/dist/compile/utils.js.map +1 -1
  76. package/dist/compile/version.js +1 -1
  77. package/dist/compile/version.js.map +1 -1
  78. package/package.json +16 -17
@@ -14,7 +14,6 @@ import { Assignment } from "./implementation/expression/assignment";
14
14
  import { BinaryOperation } from "./implementation/expression/binary_operation";
15
15
  import { Conditional } from "./implementation/expression/conditional";
16
16
  import { ElementaryTypeNameExpression } from "./implementation/expression/elementary_type_name_expression";
17
- import { Expression } from "./implementation/expression/expression";
18
17
  import { FunctionCall } from "./implementation/expression/function_call";
19
18
  import { FunctionCallOptions } from "./implementation/expression/function_call_options";
20
19
  import { Identifier } from "./implementation/expression/identifier";
@@ -48,7 +47,6 @@ import { InlineAssembly } from "./implementation/statement/inline_assembly";
48
47
  import { PlaceholderStatement } from "./implementation/statement/placeholder_statement";
49
48
  import { Return } from "./implementation/statement/return";
50
49
  import { RevertStatement } from "./implementation/statement/revert_statement";
51
- import { Statement } from "./implementation/statement/statement";
52
50
  import { Throw } from "./implementation/statement/throw";
53
51
  import { TryCatchClause } from "./implementation/statement/try_catch_clause";
54
52
  import { TryStatement } from "./implementation/statement/try_statement";
@@ -59,7 +57,6 @@ import { ArrayTypeName } from "./implementation/type/array_type_name";
59
57
  import { ElementaryTypeName } from "./implementation/type/elementary_type_name";
60
58
  import { FunctionTypeName } from "./implementation/type/function_type_name";
61
59
  import { Mapping } from "./implementation/type/mapping";
62
- import { TypeName } from "./implementation/type/type_name";
63
60
  import { UserDefinedTypeName } from "./implementation/type/user_defined_type_name";
64
61
  /**
65
62
  * When applied to following tuple type:
@@ -93,7 +90,6 @@ export declare class ASTNodeFactory {
93
90
  makeBinaryOperation(...args: Specific<ConstructorParameters<typeof BinaryOperation>>): BinaryOperation;
94
91
  makeConditional(...args: Specific<ConstructorParameters<typeof Conditional>>): Conditional;
95
92
  makeElementaryTypeNameExpression(...args: Specific<ConstructorParameters<typeof ElementaryTypeNameExpression>>): ElementaryTypeNameExpression;
96
- makeExpression(...args: Specific<ConstructorParameters<typeof Expression>>): Expression;
97
93
  makeFunctionCallOptions(...args: Specific<ConstructorParameters<typeof FunctionCallOptions>>): FunctionCallOptions;
98
94
  makeFunctionCall(...args: Specific<ConstructorParameters<typeof FunctionCall>>): FunctionCall;
99
95
  makeIdentifier(...args: Specific<ConstructorParameters<typeof Identifier>>): Identifier;
@@ -128,7 +124,6 @@ export declare class ASTNodeFactory {
128
124
  makePlaceholderStatement(...args: Specific<ConstructorParameters<typeof PlaceholderStatement>>): PlaceholderStatement;
129
125
  makeReturn(...args: Specific<ConstructorParameters<typeof Return>>): Return;
130
126
  makeRevertStatement(...args: Specific<ConstructorParameters<typeof RevertStatement>>): RevertStatement;
131
- makeStatement(...args: Specific<ConstructorParameters<typeof Statement>>): Statement;
132
127
  makeThrow(...args: Specific<ConstructorParameters<typeof Throw>>): Throw;
133
128
  makeTryCatchClause(...args: Specific<ConstructorParameters<typeof TryCatchClause>>): TryCatchClause;
134
129
  makeTryStatement(...args: Specific<ConstructorParameters<typeof TryStatement>>): TryStatement;
@@ -138,9 +133,7 @@ export declare class ASTNodeFactory {
138
133
  makeElementaryTypeName(...args: Specific<ConstructorParameters<typeof ElementaryTypeName>>): ElementaryTypeName;
139
134
  makeFunctionTypeName(...args: Specific<ConstructorParameters<typeof FunctionTypeName>>): FunctionTypeName;
140
135
  makeMapping(...args: Specific<ConstructorParameters<typeof Mapping>>): Mapping;
141
- makeTypeName(...args: Specific<ConstructorParameters<typeof TypeName>>): TypeName;
142
136
  makeUserDefinedTypeName(...args: Specific<ConstructorParameters<typeof UserDefinedTypeName>>): UserDefinedTypeName;
143
- makeNode(...args: Specific<ConstructorParameters<typeof ASTNode>>): ASTNode;
144
137
  makeIdentifierFor(target: VariableDeclaration | ContractDefinition | FunctionDefinition | StructDefinition | ErrorDefinition | EventDefinition | EnumDefinition | UserDefinedValueTypeDefinition | ImportDirective): Identifier;
145
138
  makeUnfinalized<T extends ASTNode>(type: ASTNodeConstructor<T>, ...args: Specific<ConstructorParameters<typeof type>>): T;
146
139
  make<T extends ASTNode>(type: ASTNodeConstructor<T>, ...args: Specific<ConstructorParameters<typeof type>>): T;
@@ -1 +1 @@
1
- {"version":3,"file":"ast_node_factory.d.ts","sourceRoot":"","sources":["../../src/ast/ast_node_factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ast_node_factory.d.ts","sourceRoot":"","sources":["../../src/ast/ast_node_factory.ts"],"names":[],"mappings":"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"}
@@ -687,9 +687,6 @@ class ASTNodeFactory {
687
687
  makeElementaryTypeNameExpression(...args) {
688
688
  return this.make(elementary_type_name_expression_1.ElementaryTypeNameExpression, ...args);
689
689
  }
690
- makeExpression(...args) {
691
- return this.make(expression_1.Expression, ...args);
692
- }
693
690
  makeFunctionCallOptions(...args) {
694
691
  return this.make(function_call_options_1.FunctionCallOptions, ...args);
695
692
  }
@@ -792,9 +789,6 @@ class ASTNodeFactory {
792
789
  makeRevertStatement(...args) {
793
790
  return this.make(revert_statement_1.RevertStatement, ...args);
794
791
  }
795
- makeStatement(...args) {
796
- return this.make(statement_1.Statement, ...args);
797
- }
798
792
  makeThrow(...args) {
799
793
  return this.make(throw_1.Throw, ...args);
800
794
  }
@@ -822,15 +816,9 @@ class ASTNodeFactory {
822
816
  makeMapping(...args) {
823
817
  return this.make(mapping_1.Mapping, ...args);
824
818
  }
825
- makeTypeName(...args) {
826
- return this.make(type_name_1.TypeName, ...args);
827
- }
828
819
  makeUserDefinedTypeName(...args) {
829
820
  return this.make(user_defined_type_name_1.UserDefinedTypeName, ...args);
830
821
  }
831
- makeNode(...args) {
832
- return this.make(ast_node_1.ASTNode, ...args);
833
- }
834
822
  makeIdentifierFor(target) {
835
823
  let typeString;
836
824
  if (target instanceof variable_declaration_1.VariableDeclaration) {
@@ -1 +1 @@
1
- {"version":3,"file":"ast_node_factory.js","sourceRoot":"","sources":["../../src/ast/ast_node_factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ast_node_factory.js","sourceRoot":"","sources":["../../src/ast/ast_node_factory.ts"],"names":[],"mappings":"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"}
@@ -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