solc-typed-ast 10.1.3 → 10.1.4

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.
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- [![Build Status](https://drone.infra.mythx.io/api/badges/ConsenSys/solc-typed-ast/status.svg)](https://drone.infra.mythx.io/ConsenSys/solc-typed-ast)
1
+ [![NodeJS CI](https://github.com/ConsenSys/solc-typed-ast/actions/workflows/node.js.yaml/badge.svg)](https://github.com/ConsenSys/solc-typed-ast/actions/workflows/node.js.yaml)
2
2
  [![Coverage](https://codecov.io/gh/ConsenSys/solc-typed-ast/branch/master/graph/badge.svg?token=QDmbaGWza0)](https://codecov.io/gh/ConsenSys/solc-typed-ast)
3
3
  [![Documentation](https://github.com/ConsenSys/solc-typed-ast/workflows/Build%20and%20release%20docs/badge.svg)](https://consensys.github.io/solc-typed-ast/)
4
4
  [![npm](https://img.shields.io/npm/v/solc-typed-ast)](https://www.npmjs.com/package/solc-typed-ast)
@@ -3,7 +3,6 @@ import { FunctionDefinition } from "../implementation/declaration/function_defin
3
3
  import { LegacyNodeProcessor } from "./node_processor";
4
4
  export declare class LegacyFunctionDefinitionProcessor extends LegacyNodeProcessor<FunctionDefinition> {
5
5
  process(reader: ASTReader, config: ASTReaderConfiguration, raw: any): ConstructorParameters<typeof FunctionDefinition>;
6
- private detectFunctionKind;
7
6
  private detectStateMutability;
8
7
  private extract;
9
8
  }
@@ -1 +1 @@
1
- {"version":3,"file":"function_definition_processor.d.ts","sourceRoot":"","sources":["../../../src/ast/legacy/function_definition_processor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAElE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAC;AAMvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvD,qBAAa,iCAAkC,SAAQ,mBAAmB,CAAC,kBAAkB,CAAC;IAC1F,OAAO,CACH,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,sBAAsB,EAC9B,GAAG,EAAE,GAAG,GACT,qBAAqB,CAAC,OAAO,kBAAkB,CAAC;IAmDnD,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,qBAAqB;IAc7B,OAAO,CAAC,OAAO;CAoDlB"}
1
+ {"version":3,"file":"function_definition_processor.d.ts","sourceRoot":"","sources":["../../../src/ast/legacy/function_definition_processor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAElE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAC;AAOvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvD,qBAAa,iCAAkC,SAAQ,mBAAmB,CAAC,kBAAkB,CAAC;IAC1F,OAAO,CACH,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,sBAAsB,EAC9B,GAAG,EAAE,GAAG,GACT,qBAAqB,CAAC,OAAO,kBAAkB,CAAC;IAmDnD,OAAO,CAAC,qBAAqB;IAc7B,OAAO,CAAC,OAAO;CAoDlB"}
@@ -5,6 +5,7 @@ const constants_1 = require("../constants");
5
5
  const modifier_invocation_1 = require("../implementation/meta/modifier_invocation");
6
6
  const override_specifier_1 = require("../implementation/meta/override_specifier");
7
7
  const structured_documentation_1 = require("../implementation/meta/structured_documentation");
8
+ const utils_1 = require("../utils");
8
9
  const node_processor_1 = require("./node_processor");
9
10
  class LegacyFunctionDefinitionProcessor extends node_processor_1.LegacyNodeProcessor {
10
11
  process(reader, config, raw) {
@@ -16,7 +17,7 @@ class LegacyFunctionDefinitionProcessor extends node_processor_1.LegacyNodeProce
16
17
  const visibility = attributes.visibility;
17
18
  const virtual = "virtual" in attributes ? attributes.virtual : false;
18
19
  const name = attributes.name;
19
- const kind = this.detectFunctionKind(attributes);
20
+ const kind = (0, utils_1.detectFunctionKind)(attributes);
20
21
  const stateMutability = this.detectStateMutability(attributes);
21
22
  const [structuredDocumentation, overrideSpecifier, parameters, returnParameters, modifiers, body] = this.extract(children);
22
23
  let documentation;
@@ -46,15 +47,6 @@ class LegacyFunctionDefinitionProcessor extends node_processor_1.LegacyNodeProce
46
47
  raw
47
48
  ];
48
49
  }
49
- detectFunctionKind(attributes) {
50
- if (attributes.kind) {
51
- return attributes.kind;
52
- }
53
- if (attributes.isConstructor) {
54
- return constants_1.FunctionKind.Constructor;
55
- }
56
- return attributes.name === "" ? constants_1.FunctionKind.Fallback : constants_1.FunctionKind.Function;
57
- }
58
50
  detectStateMutability(attributes) {
59
51
  if (attributes.stateMutability) {
60
52
  return attributes.stateMutability;
@@ -1 +1 @@
1
- {"version":3,"file":"function_definition_processor.js","sourceRoot":"","sources":["../../../src/ast/legacy/function_definition_processor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"function_definition_processor.js","sourceRoot":"","sources":["../../../src/ast/legacy/function_definition_processor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"function_definition_processor.d.ts","sourceRoot":"","sources":["../../../src/ast/modern/function_definition_processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAElE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAC;AAMvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvD,qBAAa,iCAAkC,SAAQ,mBAAmB,CAAC,kBAAkB,CAAC;IAC1F,OAAO,CACH,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,sBAAsB,EAC9B,GAAG,EAAE,GAAG,GACT,qBAAqB,CAAC,OAAO,kBAAkB,CAAC;CAkDtD"}
1
+ {"version":3,"file":"function_definition_processor.d.ts","sourceRoot":"","sources":["../../../src/ast/modern/function_definition_processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAElE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAC;AAOvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvD,qBAAa,iCAAkC,SAAQ,mBAAmB,CAAC,kBAAkB,CAAC;IAC1F,OAAO,CACH,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,sBAAsB,EAC9B,GAAG,EAAE,GAAG,GACT,qBAAqB,CAAC,OAAO,kBAAkB,CAAC;CAkDtD"}
@@ -2,12 +2,13 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ModernFunctionDefinitionProcessor = void 0;
4
4
  const constants_1 = require("../constants");
5
+ const utils_1 = require("../utils");
5
6
  const node_processor_1 = require("./node_processor");
6
7
  class ModernFunctionDefinitionProcessor extends node_processor_1.ModernNodeProcessor {
7
8
  process(reader, config, raw) {
8
9
  const [id, src] = super.process(reader, config, raw);
9
10
  const scope = raw.scope;
10
- const kind = raw.kind;
11
+ const kind = (0, utils_1.detectFunctionKind)(raw);
11
12
  const isConstructor = raw.isConstructor || raw.kind === constants_1.FunctionKind.Constructor;
12
13
  const visibility = raw.visibility;
13
14
  const virtual = "virtual" in raw ? raw.virtual : false;
@@ -1 +1 @@
1
- {"version":3,"file":"function_definition_processor.js","sourceRoot":"","sources":["../../../src/ast/modern/function_definition_processor.ts"],"names":[],"mappings":";;;AACA,4CAAyF;AAOzF,qDAAuD;AAEvD,MAAa,iCAAkC,SAAQ,oCAAuC;IAC1F,OAAO,CACH,MAAiB,EACjB,MAA8B,EAC9B,GAAQ;QAER,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAErD,MAAM,KAAK,GAAW,GAAG,CAAC,KAAK,CAAC;QAChC,MAAM,IAAI,GAAiB,GAAG,CAAC,IAAI,CAAC;QACpC,MAAM,aAAa,GAAY,GAAG,CAAC,aAAa,IAAI,GAAG,CAAC,IAAI,KAAK,wBAAY,CAAC,WAAW,CAAC;QAC1F,MAAM,UAAU,GAAuB,GAAG,CAAC,UAAU,CAAC;QACtD,MAAM,OAAO,GAAY,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;QAChE,MAAM,IAAI,GAAW,GAAG,CAAC,IAAI,CAAC;QAC9B,MAAM,eAAe,GAA4B,GAAG,CAAC,eAAe,CAAC;QACrE,MAAM,YAAY,GAAuB,GAAG,CAAC,YAAY,CAAC;QAE1D,IAAI,aAA2D,CAAC;QAEhE,IAAI,GAAG,CAAC,aAAa,EAAE;YACnB,aAAa;gBACT,OAAO,GAAG,CAAC,aAAa,KAAK,QAAQ;oBACjC,CAAC,CAAC,GAAG,CAAC,aAAa;oBACnB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;SACvD;QAED,MAAM,iBAAiB,GAAG,GAAG,CAAC,SAAS;YACnC,CAAC,CAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAuB;YAC9D,CAAC,CAAC,SAAS,CAAC;QAEhB,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAkB,CAAC;QAC3E,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,MAAM,CAAkB,CAAC;QACvF,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAyB,CAAC;QACrF,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAW,CAAC,CAAC,CAAC,SAAS,CAAC;QAEhF,OAAO;YACH,EAAE;YACF,GAAG;YACH,KAAK;YACL,IAAI;YACJ,IAAI;YACJ,OAAO;YACP,UAAU;YACV,eAAe;YACf,aAAa;YACb,UAAU;YACV,gBAAgB;YAChB,SAAS;YACT,iBAAiB;YACjB,IAAI;YACJ,aAAa;YACb,YAAY;YACZ,GAAG;SACN,CAAC;IACN,CAAC;CACJ;AAvDD,8EAuDC"}
1
+ {"version":3,"file":"function_definition_processor.js","sourceRoot":"","sources":["../../../src/ast/modern/function_definition_processor.ts"],"names":[],"mappings":";;;AACA,4CAAyF;AAOzF,oCAA8C;AAC9C,qDAAuD;AAEvD,MAAa,iCAAkC,SAAQ,oCAAuC;IAC1F,OAAO,CACH,MAAiB,EACjB,MAA8B,EAC9B,GAAQ;QAER,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAErD,MAAM,KAAK,GAAW,GAAG,CAAC,KAAK,CAAC;QAChC,MAAM,IAAI,GAAiB,IAAA,0BAAkB,EAAC,GAAG,CAAC,CAAC;QACnD,MAAM,aAAa,GAAY,GAAG,CAAC,aAAa,IAAI,GAAG,CAAC,IAAI,KAAK,wBAAY,CAAC,WAAW,CAAC;QAC1F,MAAM,UAAU,GAAuB,GAAG,CAAC,UAAU,CAAC;QACtD,MAAM,OAAO,GAAY,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;QAChE,MAAM,IAAI,GAAW,GAAG,CAAC,IAAI,CAAC;QAC9B,MAAM,eAAe,GAA4B,GAAG,CAAC,eAAe,CAAC;QACrE,MAAM,YAAY,GAAuB,GAAG,CAAC,YAAY,CAAC;QAE1D,IAAI,aAA2D,CAAC;QAEhE,IAAI,GAAG,CAAC,aAAa,EAAE;YACnB,aAAa;gBACT,OAAO,GAAG,CAAC,aAAa,KAAK,QAAQ;oBACjC,CAAC,CAAC,GAAG,CAAC,aAAa;oBACnB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;SACvD;QAED,MAAM,iBAAiB,GAAG,GAAG,CAAC,SAAS;YACnC,CAAC,CAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAuB;YAC9D,CAAC,CAAC,SAAS,CAAC;QAEhB,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAkB,CAAC;QAC3E,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,MAAM,CAAkB,CAAC;QACvF,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAyB,CAAC;QACrF,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAW,CAAC,CAAC,CAAC,SAAS,CAAC;QAEhF,OAAO;YACH,EAAE;YACF,GAAG;YACH,KAAK;YACL,IAAI;YACJ,IAAI;YACJ,OAAO;YACP,UAAU;YACV,eAAe;YACf,aAAa;YACb,UAAU;YACV,gBAAgB;YAChB,SAAS;YACT,iBAAiB;YACjB,IAAI;YACJ,aAAa;YACb,YAAY;YACZ,GAAG;SACN,CAAC;IACN,CAAC;CACJ;AAvDD,8EAuDC"}
@@ -1,3 +1,4 @@
1
+ import { FunctionKind } from "./constants";
1
2
  export declare type SourceLocation = {
2
3
  offset: number;
3
4
  length: number;
@@ -22,4 +23,5 @@ export declare function encodeFuncSignature(signature: string, hexPrefix?: boole
22
23
  export declare function encodeEventSignature(signature: string, hexPrefix?: boolean): string;
23
24
  export declare function sequence(start?: number, step?: number): Generator<number, number, number>;
24
25
  export declare function parseSourceLocation(range: string): SourceLocation;
26
+ export declare function detectFunctionKind(attributes: any): FunctionKind;
25
27
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/ast/utils.ts"],"names":[],"mappings":"AAEA,oBAAY,cAAc,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AAErF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,KAAK,CACjB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACnB,MAAM,EAAE,CA6CV;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,UAAQ,GAAG,MAAM,CAIhF;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,UAAQ,GAAG,MAAM,CAIjF;AAED,wBAAiB,QAAQ,CAAC,KAAK,SAAI,EAAE,IAAI,SAAI,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAIhF;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,CAQjE"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/ast/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,oBAAY,cAAc,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AAErF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,KAAK,CACjB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACnB,MAAM,EAAE,CA6CV;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,UAAQ,GAAG,MAAM,CAIhF;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,UAAQ,GAAG,MAAM,CAIjF;AAED,wBAAiB,QAAQ,CAAC,KAAK,SAAI,EAAE,IAAI,SAAI,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAIhF;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,CAQjE;AAED,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,GAAG,GAAG,YAAY,CAUhE"}
package/dist/ast/utils.js CHANGED
@@ -3,8 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.parseSourceLocation = exports.sequence = exports.encodeEventSignature = exports.encodeFuncSignature = exports.split = void 0;
6
+ exports.detectFunctionKind = exports.parseSourceLocation = exports.sequence = exports.encodeEventSignature = exports.encodeFuncSignature = exports.split = void 0;
7
7
  const web3_eth_abi_1 = __importDefault(require("web3-eth-abi"));
8
+ const constants_1 = require("./constants");
8
9
  /**
9
10
  * Splits the string using the separator.
10
11
  * If the string contains well formed parenthesized expressions
@@ -81,4 +82,14 @@ function parseSourceLocation(range) {
81
82
  return { offset, length, sourceIndex };
82
83
  }
83
84
  exports.parseSourceLocation = parseSourceLocation;
85
+ function detectFunctionKind(attributes) {
86
+ if (attributes.kind) {
87
+ return attributes.kind;
88
+ }
89
+ if (attributes.isConstructor) {
90
+ return constants_1.FunctionKind.Constructor;
91
+ }
92
+ return attributes.name === "" ? constants_1.FunctionKind.Fallback : constants_1.FunctionKind.Function;
93
+ }
94
+ exports.detectFunctionKind = detectFunctionKind;
84
95
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/ast/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/ast/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "solc-typed-ast",
3
- "version": "10.1.3",
3
+ "version": "10.1.4",
4
4
  "description": "A TypeScript library providing a normalized typed Solidity AST along with the utilities necessary to generate the AST (from Solc) and traverse/manipulate it.",
5
5
  "keywords": [],
6
6
  "files": [
@@ -21,7 +21,7 @@
21
21
  "lint": "eslint src/ test/ --ext=ts",
22
22
  "lint:fix": "eslint src/ test/ --ext=ts --fix",
23
23
  "test": "NODE_OPTIONS='--max-old-space-size=2048' nyc mocha",
24
- "coverage:upload": "nyc report --reporter=text-lcov > coverage.lcov && codecov -t $CODECOV_TOKEN",
24
+ "coverage": "nyc report",
25
25
  "docs:render": "typedoc",
26
26
  "docs:clear": "rm -rf docs/",
27
27
  "docs:refresh": "npm run docs:clear && npm run docs:render",
@@ -45,7 +45,6 @@
45
45
  "@types/semver": "^7.3.10",
46
46
  "@typescript-eslint/eslint-plugin": "^5.30.4",
47
47
  "@typescript-eslint/parser": "^5.30.4",
48
- "codecov": "^3.8.3",
49
48
  "eslint": "^8.19.0",
50
49
  "eslint-config-prettier": "^8.5.0",
51
50
  "eslint-plugin-prettier": "^4.2.1",