solc-typed-ast 8.0.1 → 9.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.
- package/README.md +37 -13
- package/dist/bin/compile.js +6 -1
- package/dist/bin/compile.js.map +1 -1
- package/dist/compile/constants.d.ts.map +1 -1
- package/dist/compile/constants.js +2 -1
- package/dist/compile/constants.js.map +1 -1
- package/dist/compile/input.d.ts +3 -9
- package/dist/compile/input.d.ts.map +1 -1
- package/dist/compile/input.js +3 -13
- package/dist/compile/input.js.map +1 -1
- package/dist/compile/kinds/compiler.d.ts +12 -1
- package/dist/compile/kinds/compiler.d.ts.map +1 -1
- package/dist/compile/kinds/compiler.js +109 -3
- package/dist/compile/kinds/compiler.js.map +1 -1
- package/dist/compile/kinds/index.d.ts +0 -2
- package/dist/compile/kinds/index.d.ts.map +1 -1
- package/dist/compile/kinds/index.js +0 -2
- package/dist/compile/kinds/index.js.map +1 -1
- package/dist/compile/kinds/md.d.ts.map +1 -1
- package/dist/compile/kinds/md.js +8 -27
- package/dist/compile/kinds/md.js.map +1 -1
- package/dist/compile/utils.d.ts.map +1 -1
- package/dist/compile/utils.js +5 -14
- package/dist/compile/utils.js.map +1 -1
- package/dist/types/builtins.d.ts.map +1 -1
- package/dist/types/builtins.js +5 -0
- package/dist/types/builtins.js.map +1 -1
- package/dist/types/utils.js +1 -1
- package/dist/types/utils.js.map +1 -1
- package/package.json +13 -76
- package/dist/compile/kinds/native.d.ts +0 -11
- package/dist/compile/kinds/native.d.ts.map +0 -1
- package/dist/compile/kinds/native.js +0 -101
- package/dist/compile/kinds/native.js.map +0 -1
- package/dist/compile/kinds/wasm.d.ts +0 -20
- package/dist/compile/kinds/wasm.d.ts.map +0 -1
- package/dist/compile/kinds/wasm.js +0 -70
- package/dist/compile/kinds/wasm.js.map +0 -1
package/README.md
CHANGED
|
@@ -11,7 +11,7 @@ A TypeScript package providing a normalized typed Solidity AST along with the ut
|
|
|
11
11
|
|
|
12
12
|
## Features
|
|
13
13
|
|
|
14
|
-
- Various [
|
|
14
|
+
- Various [Solidity](https://github.com/ethereum/solidity) compiler versions support, starting from **0.4.13**.
|
|
15
15
|
- Various compiler selection strategies, including compiler auto-detection via `pragma solidity` directives in Solidity sources with possible fallback options.
|
|
16
16
|
- Interaction with AST nodes, using type definitions.
|
|
17
17
|
- Compensation of differences between legacy and compact Solidity AST.
|
|
@@ -68,16 +68,34 @@ console.log(result);
|
|
|
68
68
|
|
|
69
69
|
The second argument with the `"auto"` value specifies a compiler selection strategy. If `"auto"` is specified and source code contains valid `pragma solidity` directive, then compiler version will be automatically picked from it. If compile process will not succedd, the execution will fall back to _"compiler guessing"_: trying to compile source with a few different versions of the new and old Solidity compilers. The other option would be to specify a concrete supported compiler version string, like `"0.7.0"` for example. There is also a support for various compiler selection strategies, including used-defined custom ones (`CompilerVersionSelectionStrategy` interface implementations).
|
|
70
70
|
|
|
71
|
-
|
|
71
|
+
### Used compilers
|
|
72
72
|
|
|
73
|
-
|
|
73
|
+
Package supports switching between native binary Solc compilers and its WASM versions. The CLI option `--compiler-kind` and `kind` argument of `compile*()` functions family may be used for that purpose. Compilers **are downloaded on-demand** to the directory `.compiler_cache` at the package installation directory (by default). The compiler cache location may be customized by setting `SOL_AST_COMPILER_CACHE` environment variable to a custom path. For example:
|
|
74
74
|
|
|
75
|
-
|
|
75
|
+
```bash
|
|
76
|
+
SOL_AST_COMPILER_CACHE=~/.compiler_cache sol-ast-compile sample.sol --compiler-kind native --tree
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
or
|
|
76
80
|
|
|
77
81
|
```bash
|
|
78
|
-
SOL_AST_COMPILER_CACHE=~/.compiler_cache
|
|
82
|
+
export SOL_AST_COMPILER_CACHE=~/.compiler_cache
|
|
83
|
+
|
|
84
|
+
sol-ast-compile sample.sol --compiler-kind native --tree
|
|
79
85
|
```
|
|
80
86
|
|
|
87
|
+
#### Invalidation of downloaded compler cache
|
|
88
|
+
|
|
89
|
+
If there is a need to invalidate the downloaded compiler cache, then follow next steps:
|
|
90
|
+
|
|
91
|
+
1. Locate `.compiler_cache` directory:
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
sol-ast-compile --locate-compiler-cache
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
2. Manually remove `list.json` files to invalidate list of available compilers, remove certain compilers, or remove entire directory. Missing pieces will be downloaded again.
|
|
98
|
+
|
|
81
99
|
### Typed universal AST
|
|
82
100
|
|
|
83
101
|
After the source is compiled and original compiler has provided the raw AST, the `ASTReader` could be used to read the typed universal AST:
|
|
@@ -138,7 +156,7 @@ Use `--help` to see all available features.
|
|
|
138
156
|
The project have following directory structure:
|
|
139
157
|
|
|
140
158
|
```
|
|
141
|
-
├── .compiler_cache # Cache of downloaded
|
|
159
|
+
├── .compiler_cache # Cache of downloaded compilers (by default, if not configured by SOL_AST_COMPILER_CACHE).
|
|
142
160
|
├── coverage # Test coverage report, produced by "npm test" command.
|
|
143
161
|
├── dist # Generated JavaScript sources for package distribution (produced by "npm run build" and published by "npm publish" commands).
|
|
144
162
|
├── docs # Project documentation and API reference, produced by "npm run docs:render" or "npm run docs:refresh" commands.
|
|
@@ -174,24 +192,30 @@ A key points for better understanding:
|
|
|
174
192
|
|
|
175
193
|
## Development installation
|
|
176
194
|
|
|
177
|
-
|
|
195
|
+
### Prerequisites
|
|
178
196
|
|
|
179
|
-
|
|
180
|
-
- NPM version **6.9.0** or newer.
|
|
197
|
+
We suggest to use latest NodeJS LTS release `lts/gallium` (v16.14.0) and associated version of NPM. If there is a need to run different NodeJS versions, consider using [NVM](https://github.com/nvm-sh/nvm) or similar tool, that is available for your platform.
|
|
181
198
|
|
|
182
|
-
Clone
|
|
199
|
+
### Clone and build
|
|
200
|
+
|
|
201
|
+
Clone repository, install and link:
|
|
183
202
|
|
|
184
203
|
```bash
|
|
185
204
|
git clone https://github.com/ConsenSys/solc-typed-ast.git
|
|
205
|
+
cd solc-typed-ast/
|
|
206
|
+
npm install
|
|
207
|
+
npm link
|
|
186
208
|
```
|
|
187
209
|
|
|
188
|
-
|
|
210
|
+
Prior to running tests the compiler pre-downloading script `docker/download.sh` may be used to setup local compiler cache:
|
|
189
211
|
|
|
190
212
|
```bash
|
|
191
|
-
|
|
192
|
-
|
|
213
|
+
docker/download.sh 'linux-amd64' '.compiler_cache' # platform-dependent native compiler builds
|
|
214
|
+
docker/download.sh 'wasm' '.compiler_cache' # cross-platform WASM compiler builds
|
|
193
215
|
```
|
|
194
216
|
|
|
217
|
+
Supported platforms are listed here: https://github.com/ethereum/solc-bin
|
|
218
|
+
|
|
195
219
|
## Project documentation and API reference
|
|
196
220
|
|
|
197
221
|
The project documentation is contained in the `docs/` directory. It could be built via following command:
|
package/dist/bin/compile.js
CHANGED
|
@@ -18,7 +18,8 @@ const cli = {
|
|
|
18
18
|
"raw",
|
|
19
19
|
"with-sources",
|
|
20
20
|
"tree",
|
|
21
|
-
"source"
|
|
21
|
+
"source",
|
|
22
|
+
"locate-compiler-cache"
|
|
22
23
|
],
|
|
23
24
|
number: ["depth"],
|
|
24
25
|
string: [
|
|
@@ -51,6 +52,9 @@ const cli = {
|
|
|
51
52
|
].join("\n");
|
|
52
53
|
console.log(message);
|
|
53
54
|
}
|
|
55
|
+
else if (args["locate-compiler-cache"]) {
|
|
56
|
+
console.log(__1.CACHE_DIR);
|
|
57
|
+
}
|
|
54
58
|
else if (args.help || (!args._.length && !args.stdin)) {
|
|
55
59
|
const message = `Compiles Solidity input and prints typed AST.
|
|
56
60
|
|
|
@@ -88,6 +92,7 @@ OPTIONS:
|
|
|
88
92
|
--depth Number of children for each of AST node to print.
|
|
89
93
|
Minimum value is 0. Not affects "raw", "tree" and "source".
|
|
90
94
|
Default value: ${cli.default.depth}
|
|
95
|
+
--locate-compiler-cache Print location of cache directory, that is used to store downloaded compilers.
|
|
91
96
|
`;
|
|
92
97
|
console.log(message);
|
|
93
98
|
}
|
package/dist/bin/compile.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compile.js","sourceRoot":"","sources":["../../src/bin/compile.ts"],"names":[],"mappings":";;;;;;AACA,wDAA2B;AAC3B,wDAAgC;AAChC,gDAAwB;AACxB,
|
|
1
|
+
{"version":3,"file":"compile.js","sourceRoot":"","sources":["../../src/bin/compile.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/compile/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,UAe9B,CAAC;AAEF,eAAO,MAAM,kBAAkB,UAmB9B,CAAC;AAEF,eAAO,MAAM,kBAAkB,UAc9B,CAAC;AAEF,eAAO,MAAM,kBAAkB,UAAkE,CAAC;AAElG,eAAO,MAAM,kBAAkB,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/compile/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,UAe9B,CAAC;AAEF,eAAO,MAAM,kBAAkB,UAmB9B,CAAC;AAEF,eAAO,MAAM,kBAAkB,UAc9B,CAAC;AAEF,eAAO,MAAM,kBAAkB,UAAkE,CAAC;AAElG,eAAO,MAAM,kBAAkB,UAc9B,CAAC;AAEF,eAAO,MAAM,cAAc,YAM1B,CAAC;AAEF,eAAO,MAAM,gBAAgB,UAM5B,CAAC;AAEF,eAAO,MAAM,qBAAqB,QAAgD,CAAC;AAEnF,oBAAY,YAAY;IACpB,IAAI,SAAS;IACb,MAAM,WAAW;CACpB;AAED;;;GAGG;AACH,oBAAY,iBAAiB;IACzB,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,EAAE,OAAO;IACT,YAAY,gBAAgB;IAC5B,cAAc,kBAAkB;IAChC,GAAG,QAAQ;IACX,YAAY,iBAAiB;IAC7B,mBAAmB,uBAAuB;IAC1C,YAAY,iBAAiB;IAC7B,mBAAmB,wBAAwB;IAC3C,oBAAoB,yBAAyB;IAC7C,sBAAsB,2BAA2B;IACjD,2BAA2B,gCAAgC;IAC3D,6BAA6B,kCAAkC;IAC/D,wCAAwC,6CAA6C;IACrF,qBAAqB,0BAA0B;IAC/C,gBAAgB,qBAAqB;IACrC,UAAU,eAAe;IACzB,UAAU,eAAe;IACzB,GAAG,MAAM;CACZ;AAED,eAAO,MAAM,qBAAqB,aAA+C,CAAC;AAElF,eAAO,MAAM,0BAA0B,aAAoD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/compile/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,kBAAkB,GAAG;IAC9B,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;CACX,CAAC;AAEW,QAAA,kBAAkB,GAAG;IAC9B,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;CACX,CAAC;AAEW,QAAA,kBAAkB,GAAG;IAC9B,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,QAAQ;CACX,CAAC;AAEW,QAAA,kBAAkB,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAErF,QAAA,kBAAkB,GAAG;IAC9B,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,QAAQ;IACR,QAAQ;CACX,CAAC;AAEW,QAAA,cAAc,GAAG;IAC1B,0BAAkB;IAClB,0BAAkB;IAClB,0BAAkB;IAClB,0BAAkB;IAClB,0BAAkB;CACrB,CAAC;AAEW,QAAA,gBAAgB,GAAG;IAC5B,GAAG,0BAAkB;IACrB,GAAG,0BAAkB;IACrB,GAAG,0BAAkB;IACrB,GAAG,0BAAkB;IACrB,GAAG,0BAAkB;CACxB,CAAC;AAEW,QAAA,qBAAqB,GAAG,wBAAgB,CAAC,wBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAEnF,IAAY,YAGX;AAHD,WAAY,YAAY;IACpB,6BAAa,CAAA;IACb,iCAAiB,CAAA;AACrB,CAAC,EAHW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAGvB;AAED;;;GAGG;AACH,IAAY,iBAwBX;AAxBD,WAAY,iBAAiB;IACzB,gCAAW,CAAA;IACX,gCAAW,CAAA;IACX,sCAAiB,CAAA;IACjB,wCAAmB,CAAA;IACnB,0CAAqB,CAAA;IACrB,8BAAS,CAAA;IACT,iDAA4B,CAAA;IAC5B,qDAAgC,CAAA;IAChC,gCAAW,CAAA;IACX,kDAA6B,CAAA;IAC7B,+DAA0C,CAAA;IAC1C,kDAA6B,CAAA;IAC7B,gEAA2C,CAAA;IAC3C,kEAA6C,CAAA;IAC7C,sEAAiD,CAAA;IACjD,gFAA2D,CAAA;IAC3D,oFAA+D,CAAA;IAC/D,0GAAqF,CAAA;IACrF,oEAA+C,CAAA;IAC/C,0DAAqC,CAAA;IACrC,8CAAyB,CAAA;IACzB,8CAAyB,CAAA;IACzB,8BAAS,CAAA;AACb,CAAC,EAxBW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAwB5B;AAEY,QAAA,qBAAqB,GAAG,IAAI,GAAG,CAAS,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;AAErE,QAAA,0BAA0B,GAAG,IAAI,GAAG,CAAS,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/compile/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,kBAAkB,GAAG;IAC9B,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;CACX,CAAC;AAEW,QAAA,kBAAkB,GAAG;IAC9B,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;CACX,CAAC;AAEW,QAAA,kBAAkB,GAAG;IAC9B,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,QAAQ;CACX,CAAC;AAEW,QAAA,kBAAkB,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAErF,QAAA,kBAAkB,GAAG;IAC9B,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,QAAQ;CACX,CAAC;AAEW,QAAA,cAAc,GAAG;IAC1B,0BAAkB;IAClB,0BAAkB;IAClB,0BAAkB;IAClB,0BAAkB;IAClB,0BAAkB;CACrB,CAAC;AAEW,QAAA,gBAAgB,GAAG;IAC5B,GAAG,0BAAkB;IACrB,GAAG,0BAAkB;IACrB,GAAG,0BAAkB;IACrB,GAAG,0BAAkB;IACrB,GAAG,0BAAkB;CACxB,CAAC;AAEW,QAAA,qBAAqB,GAAG,wBAAgB,CAAC,wBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAEnF,IAAY,YAGX;AAHD,WAAY,YAAY;IACpB,6BAAa,CAAA;IACb,iCAAiB,CAAA;AACrB,CAAC,EAHW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAGvB;AAED;;;GAGG;AACH,IAAY,iBAwBX;AAxBD,WAAY,iBAAiB;IACzB,gCAAW,CAAA;IACX,gCAAW,CAAA;IACX,sCAAiB,CAAA;IACjB,wCAAmB,CAAA;IACnB,0CAAqB,CAAA;IACrB,8BAAS,CAAA;IACT,iDAA4B,CAAA;IAC5B,qDAAgC,CAAA;IAChC,gCAAW,CAAA;IACX,kDAA6B,CAAA;IAC7B,+DAA0C,CAAA;IAC1C,kDAA6B,CAAA;IAC7B,gEAA2C,CAAA;IAC3C,kEAA6C,CAAA;IAC7C,sEAAiD,CAAA;IACjD,gFAA2D,CAAA;IAC3D,oFAA+D,CAAA;IAC/D,0GAAqF,CAAA;IACrF,oEAA+C,CAAA;IAC/C,0DAAqC,CAAA;IACrC,8CAAyB,CAAA;IACzB,8CAAyB,CAAA;IACzB,8BAAS,CAAA;AACb,CAAC,EAxBW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAwB5B;AAEY,QAAA,qBAAqB,GAAG,IAAI,GAAG,CAAS,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;AAErE,QAAA,0BAA0B,GAAG,IAAI,GAAG,CAAS,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC"}
|
package/dist/compile/input.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CompilationOutput
|
|
1
|
+
import { CompilationOutput } from "./constants";
|
|
2
2
|
export interface PartialSolcInput {
|
|
3
3
|
language: "Solidity";
|
|
4
4
|
settings: {
|
|
@@ -8,24 +8,18 @@ export interface PartialSolcInput {
|
|
|
8
8
|
};
|
|
9
9
|
[otherKeys: string]: any;
|
|
10
10
|
}
|
|
11
|
-
export interface
|
|
12
|
-
sources: {
|
|
13
|
-
[fileName: string]: string;
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
export interface Solc05Input extends PartialSolcInput {
|
|
11
|
+
export interface SolcInput extends PartialSolcInput {
|
|
17
12
|
sources: {
|
|
18
13
|
[fileName: string]: {
|
|
19
14
|
content: string;
|
|
20
15
|
};
|
|
21
16
|
};
|
|
22
17
|
}
|
|
23
|
-
export declare type SolcInput = Solc04Input | Solc05Input;
|
|
24
18
|
/**
|
|
25
19
|
* Create valid standard JSON input for the solidity compiler as specified in
|
|
26
20
|
* https://docs.soliditylang.org/en/latest/using-the-compiler.html.
|
|
27
21
|
*
|
|
28
22
|
* This handles the differences in the JSON input between different compiler versions.
|
|
29
23
|
*/
|
|
30
|
-
export declare function createCompilerInput(files: Map<string, string>, remappings: string[],
|
|
24
|
+
export declare function createCompilerInput(files: Map<string, string>, remappings: string[], output: CompilationOutput[], compilerSettings: any): SolcInput;
|
|
31
25
|
//# sourceMappingURL=input.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../src/compile/input.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../src/compile/input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,UAAU,CAAC;IACrB,QAAQ,EAAE;QACN,eAAe,EAAE,GAAG,CAAC;QACrB,UAAU,EAAE,MAAM,EAAE,CAAC;QACrB,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG,CAAC;KAC5B,CAAC;IACF,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG,CAAC;CAC5B;AAED,MAAM,WAAW,SAAU,SAAQ,gBAAgB;IAC/C,OAAO,EAAE;QAAE,CAAC,QAAQ,EAAE,MAAM,GAAG;YAAE,OAAO,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;CACxD;AAgBD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAC/B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC1B,UAAU,EAAE,MAAM,EAAE,EACpB,MAAM,EAAE,iBAAiB,EAAE,EAC3B,gBAAgB,EAAE,GAAG,GACtB,SAAS,CAwCX"}
|
package/dist/compile/input.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.createCompilerInput = void 0;
|
|
4
|
-
const semver_1 = require("semver");
|
|
5
4
|
const constants_1 = require("./constants");
|
|
6
5
|
function mergeCompilerSettings(input, settings) {
|
|
7
6
|
if (settings !== undefined) {
|
|
@@ -20,7 +19,7 @@ function mergeCompilerSettings(input, settings) {
|
|
|
20
19
|
*
|
|
21
20
|
* This handles the differences in the JSON input between different compiler versions.
|
|
22
21
|
*/
|
|
23
|
-
function createCompilerInput(files, remappings,
|
|
22
|
+
function createCompilerInput(files, remappings, output, compilerSettings) {
|
|
24
23
|
let fileOutput = [];
|
|
25
24
|
let contractOutput = [];
|
|
26
25
|
for (const outputSel of output) {
|
|
@@ -49,17 +48,8 @@ function createCompilerInput(files, remappings, version, kind, output, compilerS
|
|
|
49
48
|
}
|
|
50
49
|
};
|
|
51
50
|
partialInp.sources = {};
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
if ((0, semver_1.lt)(version, "0.5.0") && kind === constants_1.CompilerKind.WASM) {
|
|
55
|
-
for (const [fileName, content] of files.entries()) {
|
|
56
|
-
partialInp.sources[fileName] = content;
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
else {
|
|
60
|
-
for (const [fileName, content] of files.entries()) {
|
|
61
|
-
partialInp.sources[fileName] = { content };
|
|
62
|
-
}
|
|
51
|
+
for (const [fileName, content] of files.entries()) {
|
|
52
|
+
partialInp.sources[fileName] = { content };
|
|
63
53
|
}
|
|
64
54
|
const input = partialInp;
|
|
65
55
|
return mergeCompilerSettings(input, compilerSettings);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input.js","sourceRoot":"","sources":["../../src/compile/input.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"input.js","sourceRoot":"","sources":["../../src/compile/input.ts"],"names":[],"mappings":";;;AAAA,2CAAgD;AAgBhD,SAAS,qBAAqB,CAAsB,KAAQ,EAAE,QAAa;IACvE,IAAI,QAAQ,KAAK,SAAS,EAAE;QACxB,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE;YACxB,IAAI,GAAG,KAAK,iBAAiB,EAAE;gBAC3B,SAAS;aACZ;YAED,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;SACvC;KACJ;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED;;;;;GAKG;AACH,SAAgB,mBAAmB,CAC/B,KAA0B,EAC1B,UAAoB,EACpB,MAA2B,EAC3B,gBAAqB;IAErB,IAAI,UAAU,GAAa,EAAE,CAAC;IAC9B,IAAI,cAAc,GAAa,EAAE,CAAC;IAElC,KAAK,MAAM,SAAS,IAAI,MAAM,EAAE;QAC5B,IAAI,SAAS,KAAK,6BAAiB,CAAC,GAAG,EAAE;YACrC,UAAU,GAAG,CAAC,6BAAiB,CAAC,GAAG,CAAC,CAAC;YACrC,cAAc,GAAG,CAAC,6BAAiB,CAAC,GAAG,CAAC,CAAC;YACzC,MAAM;SACT;QAED,IAAI,SAAS,KAAK,6BAAiB,CAAC,GAAG,EAAE;YACrC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAC9B;aAAM;YACH,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAClC;KACJ;IAED,MAAM,UAAU,GAAqB;QACjC,QAAQ,EAAE,UAAU;QACpB,QAAQ,EAAE;YACN,UAAU;YACV,eAAe,EAAE;gBACb,GAAG,EAAE;oBACD,GAAG,EAAE,cAAc;oBACnB,EAAE,EAAE,UAAU;iBACjB;aACJ;SACJ;KACJ,CAAC;IAEF,UAAU,CAAC,OAAO,GAAG,EAAE,CAAC;IAExB,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE;QAC/C,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC;KAC9C;IAED,MAAM,KAAK,GAAG,UAAuB,CAAC;IAEtC,OAAO,qBAAqB,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;AAC1D,CAAC;AA7CD,kDA6CC"}
|
|
@@ -1,7 +1,18 @@
|
|
|
1
|
+
import { CompilerKind } from "..";
|
|
1
2
|
import { SolcInput } from "../input";
|
|
2
3
|
export declare abstract class Compiler {
|
|
3
4
|
readonly version: string;
|
|
4
|
-
|
|
5
|
+
readonly path: string;
|
|
6
|
+
constructor(version: string, path: string);
|
|
5
7
|
abstract compile(inputJson: SolcInput): Promise<any>;
|
|
6
8
|
}
|
|
9
|
+
export declare class NativeCompiler extends Compiler {
|
|
10
|
+
compile(input: SolcInput): Promise<any>;
|
|
11
|
+
}
|
|
12
|
+
export declare class WasmCompiler extends Compiler {
|
|
13
|
+
compile(input: SolcInput): Promise<any>;
|
|
14
|
+
}
|
|
15
|
+
declare type CompilerMapping = [CompilerKind.Native, NativeCompiler] | [CompilerKind.WASM, WasmCompiler];
|
|
16
|
+
export declare function getCompilerForVersion<T extends CompilerMapping>(version: string, kind: T[0]): Promise<T[1] | undefined>;
|
|
17
|
+
export {};
|
|
7
18
|
//# sourceMappingURL=compiler.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compiler.d.ts","sourceRoot":"","sources":["../../../src/compile/kinds/compiler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"compiler.d.ts","sourceRoot":"","sources":["../../../src/compile/kinds/compiler.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAoB,MAAM,IAAI,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAUrC,8BAAsB,QAAQ;aACE,OAAO,EAAE,MAAM;aAAkB,IAAI,EAAE,MAAM;gBAA7C,OAAO,EAAE,MAAM,EAAkB,IAAI,EAAE,MAAM;IAEzE,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;CACvD;AAED,qBAAa,cAAe,SAAQ,QAAQ;IAClC,OAAO,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;CA0ChD;AAED,qBAAa,YAAa,SAAQ,QAAQ;IAChC,OAAO,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;CAQhD;AAED,aAAK,eAAe,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;AAEjG,wBAAsB,qBAAqB,CAAC,CAAC,SAAS,eAAe,EACjE,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,GACX,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CA6E3B"}
|
|
@@ -1,13 +1,119 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Compiler = void 0;
|
|
6
|
+
exports.getCompilerForVersion = exports.WasmCompiler = exports.NativeCompiler = exports.Compiler = void 0;
|
|
7
|
+
const axios_1 = __importDefault(require("axios"));
|
|
8
|
+
const child_process_1 = require("child_process");
|
|
9
|
+
const crypto_1 = __importDefault(require("crypto"));
|
|
10
|
+
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
11
|
+
const path_1 = __importDefault(require("path"));
|
|
12
|
+
const __1 = require("..");
|
|
4
13
|
const misc_1 = require("../../misc");
|
|
5
14
|
const version_1 = require("../version");
|
|
15
|
+
const md_1 = require("./md");
|
|
6
16
|
class Compiler {
|
|
7
|
-
constructor(version) {
|
|
17
|
+
constructor(version, path) {
|
|
8
18
|
this.version = version;
|
|
9
|
-
|
|
19
|
+
this.path = path;
|
|
10
20
|
}
|
|
11
21
|
}
|
|
12
22
|
exports.Compiler = Compiler;
|
|
23
|
+
class NativeCompiler extends Compiler {
|
|
24
|
+
async compile(input) {
|
|
25
|
+
const child = (0, child_process_1.spawn)(this.path, ["--standard-json"], {});
|
|
26
|
+
return new Promise((resolve, reject) => {
|
|
27
|
+
child.stdin.write(JSON.stringify(input), "utf-8");
|
|
28
|
+
child.stdin.end();
|
|
29
|
+
let stdout = "";
|
|
30
|
+
let stderr = "";
|
|
31
|
+
child.stdout.on("data", (data) => {
|
|
32
|
+
stdout += data;
|
|
33
|
+
});
|
|
34
|
+
child.stderr.on("data", (data) => {
|
|
35
|
+
stderr += data;
|
|
36
|
+
});
|
|
37
|
+
child.on("close", (code) => {
|
|
38
|
+
if (code !== 0) {
|
|
39
|
+
reject(`Compiler exited with code ${code}, stderr: ${stderr}`);
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
if (stderr !== "") {
|
|
43
|
+
reject(`Compiler exited with non-empty stderr: ${stderr}`);
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
let outJson;
|
|
47
|
+
try {
|
|
48
|
+
outJson = JSON.parse(stdout);
|
|
49
|
+
}
|
|
50
|
+
catch (e) {
|
|
51
|
+
reject(e);
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
resolve(outJson);
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
exports.NativeCompiler = NativeCompiler;
|
|
60
|
+
class WasmCompiler extends Compiler {
|
|
61
|
+
async compile(input) {
|
|
62
|
+
const solc = require("solc");
|
|
63
|
+
const module = require(this.path);
|
|
64
|
+
const wrappedModule = solc.setupMethods(module);
|
|
65
|
+
const output = wrappedModule.compile(JSON.stringify(input));
|
|
66
|
+
return JSON.parse(output);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
exports.WasmCompiler = WasmCompiler;
|
|
70
|
+
async function getCompilerForVersion(version, kind) {
|
|
71
|
+
(0, misc_1.assert)((0, version_1.isExact)(version), "Version string must contain exact SemVer-formatted version without any operators");
|
|
72
|
+
let prefix;
|
|
73
|
+
if (kind === __1.CompilerKind.Native) {
|
|
74
|
+
prefix = (0, md_1.getCompilerPrefixForOs)();
|
|
75
|
+
}
|
|
76
|
+
else if (kind === __1.CompilerKind.WASM) {
|
|
77
|
+
prefix = "wasm";
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
throw new Error(`Unsupported compiler kind "${kind}"`);
|
|
81
|
+
}
|
|
82
|
+
(0, misc_1.assert)(__1.CompilerVersions.includes(version), `Unsupported ${kind} compiler version ${version}`);
|
|
83
|
+
if (prefix === undefined) {
|
|
84
|
+
return undefined;
|
|
85
|
+
}
|
|
86
|
+
const md = await (0, md_1.getCompilerMDForPlatform)(prefix);
|
|
87
|
+
const compilerFileName = md.releases[version];
|
|
88
|
+
if (compilerFileName === undefined) {
|
|
89
|
+
return undefined;
|
|
90
|
+
}
|
|
91
|
+
const compilerLocalPath = path_1.default.join(md_1.CACHE_DIR, prefix, compilerFileName);
|
|
92
|
+
(0, misc_1.assert)((0, md_1.isSubDir)(compilerLocalPath, md_1.CACHE_DIR), `Path ${compilerLocalPath} escapes from cache dir ${md_1.CACHE_DIR}`);
|
|
93
|
+
if (!fs_extra_1.default.existsSync(compilerLocalPath)) {
|
|
94
|
+
const build = md.builds.find((b) => b.version === version);
|
|
95
|
+
(0, misc_1.assert)(build !== undefined, `Unable to find build metadata for ${prefix} compiler ${version} in "list.json"`);
|
|
96
|
+
const response = await axios_1.default.get(`${md_1.BINARIES_URL}/${prefix}/${compilerFileName}`, {
|
|
97
|
+
responseType: "arraybuffer"
|
|
98
|
+
});
|
|
99
|
+
const hash = crypto_1.default.createHash("sha256");
|
|
100
|
+
hash.update(response.data);
|
|
101
|
+
const digest = "0x" + hash.digest("hex");
|
|
102
|
+
(0, misc_1.assert)(digest === build.sha256, `Downloaded ${prefix} compiler ${version} hash ${digest} does not match hash ${build.sha256} from "list.json"`);
|
|
103
|
+
/**
|
|
104
|
+
* Native compilers are exeсutable files, so give them proper permissions.
|
|
105
|
+
* WASM compilers are loaded by NodeJS, so write them as readonly common files.
|
|
106
|
+
*/
|
|
107
|
+
const permissions = kind === __1.CompilerKind.Native ? 0o555 : 0o444;
|
|
108
|
+
await fs_extra_1.default.writeFile(compilerLocalPath, response.data, { mode: permissions });
|
|
109
|
+
}
|
|
110
|
+
if (kind === __1.CompilerKind.Native) {
|
|
111
|
+
return new NativeCompiler(version, compilerLocalPath);
|
|
112
|
+
}
|
|
113
|
+
if (kind === __1.CompilerKind.WASM) {
|
|
114
|
+
return new WasmCompiler(version, compilerLocalPath);
|
|
115
|
+
}
|
|
116
|
+
throw new Error(`Unable to detemine compiler constructor for kind "${kind}"`);
|
|
117
|
+
}
|
|
118
|
+
exports.getCompilerForVersion = getCompilerForVersion;
|
|
13
119
|
//# sourceMappingURL=compiler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compiler.js","sourceRoot":"","sources":["../../../src/compile/kinds/compiler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"compiler.js","sourceRoot":"","sources":["../../../src/compile/kinds/compiler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/compile/kinds/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/compile/kinds/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,MAAM,CAAC"}
|
|
@@ -11,7 +11,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
11
11
|
};
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
13
|
__exportStar(require("./compiler"), exports);
|
|
14
|
-
__exportStar(require("./native"), exports);
|
|
15
|
-
__exportStar(require("./wasm"), exports);
|
|
16
14
|
__exportStar(require("./md"), exports);
|
|
17
15
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/compile/kinds/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA2B;AAC3B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/compile/kinds/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA2B;AAC3B,uCAAqB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"md.d.ts","sourceRoot":"","sources":["../../../src/compile/kinds/md.ts"],"names":[],"mappings":"AAMA,wBAAgB,sBAAsB,IAAI,MAAM,GAAG,SAAS,CAyB3D;AAED,MAAM,WAAW,wBAAwB;IACrC,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC3B,QAAQ,EAAE;QAAE,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CAC3C;AAED,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,EAAE,CAAC;CAClB;AAKD,eAAO,MAAM,SAAS,QAAkE,CAAC;AACzF,eAAO,MAAM,YAAY,sCAAsC,CAAC;AAEhE;;GAEG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,
|
|
1
|
+
{"version":3,"file":"md.d.ts","sourceRoot":"","sources":["../../../src/compile/kinds/md.ts"],"names":[],"mappings":"AAMA,wBAAgB,sBAAsB,IAAI,MAAM,GAAG,SAAS,CAyB3D;AAED,MAAM,WAAW,wBAAwB;IACrC,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC3B,QAAQ,EAAE;QAAE,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CAC3C;AAED,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,EAAE,CAAC;CAClB;AAKD,eAAO,MAAM,SAAS,QAAkE,CAAC;AACzF,eAAO,MAAM,YAAY,sCAAsC,CAAC;AAEhE;;GAEG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAI/D;AAED,wBAAsB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAsBhG"}
|
package/dist/compile/kinds/md.js
CHANGED
|
@@ -1,33 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
-
}) : function(o, v) {
|
|
12
|
-
o["default"] = v;
|
|
13
|
-
});
|
|
14
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
-
if (mod && mod.__esModule) return mod;
|
|
16
|
-
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
-
__setModuleDefault(result, mod);
|
|
19
|
-
return result;
|
|
20
|
-
};
|
|
21
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
22
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
23
4
|
};
|
|
24
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
6
|
exports.getCompilerMDForPlatform = exports.isSubDir = exports.BINARIES_URL = exports.CACHE_DIR = exports.getCompilerPrefixForOs = void 0;
|
|
26
7
|
const axios_1 = __importDefault(require("axios"));
|
|
27
|
-
const console_1 = require("console");
|
|
28
8
|
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
29
9
|
const os_1 = __importDefault(require("os"));
|
|
30
|
-
const path_1 =
|
|
10
|
+
const path_1 = __importDefault(require("path"));
|
|
11
|
+
const utils_1 = require("../../misc/utils");
|
|
31
12
|
function getCompilerPrefixForOs() {
|
|
32
13
|
const arch = os_1.default.arch();
|
|
33
14
|
/**
|
|
@@ -57,20 +38,20 @@ exports.BINARIES_URL = "https://binaries.soliditylang.org";
|
|
|
57
38
|
* Return true IFF child is a subdirectory of parent.
|
|
58
39
|
*/
|
|
59
40
|
function isSubDir(child, parent) {
|
|
60
|
-
const relPath =
|
|
61
|
-
return !
|
|
41
|
+
const relPath = path_1.default.relative(parent, child);
|
|
42
|
+
return !path_1.default.isAbsolute(relPath) && !relPath.startsWith("..");
|
|
62
43
|
}
|
|
63
44
|
exports.isSubDir = isSubDir;
|
|
64
45
|
async function getCompilerMDForPlatform(prefix) {
|
|
65
46
|
const cachedListPath = path_1.default.join(exports.CACHE_DIR, prefix, "list.json");
|
|
66
|
-
(0,
|
|
47
|
+
(0, utils_1.assert)(isSubDir(cachedListPath, exports.CACHE_DIR), `Path ${cachedListPath} escapes from cache dir ${exports.CACHE_DIR}`);
|
|
67
48
|
if (fs_extra_1.default.existsSync(cachedListPath)) {
|
|
68
|
-
return fs_extra_1.default.
|
|
49
|
+
return fs_extra_1.default.readJSON(cachedListPath);
|
|
69
50
|
}
|
|
70
51
|
const response = await axios_1.default.get(`${exports.BINARIES_URL}/${prefix}/list.json`);
|
|
71
52
|
const metaData = response.data;
|
|
72
|
-
fs_extra_1.default.
|
|
73
|
-
fs_extra_1.default.
|
|
53
|
+
await fs_extra_1.default.ensureDir(path_1.default.join(exports.CACHE_DIR, prefix));
|
|
54
|
+
await fs_extra_1.default.writeJSON(cachedListPath, metaData);
|
|
74
55
|
return metaData;
|
|
75
56
|
}
|
|
76
57
|
exports.getCompilerMDForPlatform = getCompilerMDForPlatform;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"md.js","sourceRoot":"","sources":["../../../src/compile/kinds/md.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"md.js","sourceRoot":"","sources":["../../../src/compile/kinds/md.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,wDAA2B;AAC3B,4CAAoB;AACpB,gDAAwB;AACxB,4CAA0C;AAE1C,SAAgB,sBAAsB;IAClC,MAAM,IAAI,GAAG,YAAE,CAAC,IAAI,EAAE,CAAC;IAEvB;;OAEG;IACH,IAAI,IAAI,KAAK,KAAK,EAAE;QAChB,OAAO,SAAS,CAAC;KACpB;IAED,MAAM,IAAI,GAAG,YAAE,CAAC,IAAI,EAAE,CAAC;IAEvB,IAAI,IAAI,KAAK,OAAO,EAAE;QAClB,OAAO,aAAa,CAAC;KACxB;IAED,IAAI,IAAI,KAAK,YAAY,EAAE;QACvB,OAAO,eAAe,CAAC;KAC1B;IAED,IAAI,IAAI,KAAK,QAAQ,EAAE;QACnB,OAAO,cAAc,CAAC;KACzB;IAED,OAAO,SAAS,CAAC;AACrB,CAAC;AAzBD,wDAyBC;AAgBD,MAAM,eAAe,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,iBAAiB,CAAC,CAAC;AAClF,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;AAEhD,QAAA,SAAS,GAAG,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,cAAc,CAAC;AAC5E,QAAA,YAAY,GAAG,mCAAmC,CAAC;AAEhE;;GAEG;AACH,SAAgB,QAAQ,CAAC,KAAa,EAAE,MAAc;IAClD,MAAM,OAAO,GAAG,cAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAE7C,OAAO,CAAC,cAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;AAClE,CAAC;AAJD,4BAIC;AAEM,KAAK,UAAU,wBAAwB,CAAC,MAAc;IACzD,MAAM,cAAc,GAAG,cAAI,CAAC,IAAI,CAAC,iBAAS,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IAEjE,IAAA,cAAM,EACF,QAAQ,CAAC,cAAc,EAAE,iBAAS,CAAC,EACnC,QAAQ,cAAc,2BAA2B,iBAAS,EAAE,CAC/D,CAAC;IAEF,IAAI,kBAAG,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE;QAChC,OAAO,kBAAG,CAAC,QAAQ,CAAC,cAAc,CAAsC,CAAC;KAC5E;IAED,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CAC5B,GAAG,oBAAY,IAAI,MAAM,YAAY,CACxC,CAAC;IAEF,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC;IAE/B,MAAM,kBAAG,CAAC,SAAS,CAAC,cAAI,CAAC,IAAI,CAAC,iBAAS,EAAE,MAAM,CAAC,CAAC,CAAC;IAClD,MAAM,kBAAG,CAAC,SAAS,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;IAE9C,OAAO,QAAQ,CAAC;AACpB,CAAC;AAtBD,4DAsBC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/compile/utils.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/compile/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAA6C,cAAc,EAAoB,MAAM,GAAG,CAAC;AAChG,OAAO,EACH,gCAAgC,EAInC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAI9C,MAAM,WAAW,aAAa;IAC1B,CAAC,IAAI,EAAE,MAAM,GAAG;QACZ,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;KAC9B,CAAC;CACL;AAED,MAAM,WAAW,aAAa;IAC1B,IAAI,EAAE,GAAG,CAAC;IACV,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED,MAAM,WAAW,cAAc;IAC3B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,qBAAa,qBAAsB,SAAQ,KAAK;CAAG;AAEnD,qBAAa,kBAAmB,SAAQ,KAAK;IACzC,QAAQ,EAAE,cAAc,EAAE,CAAC;gBAEf,OAAO,EAAE,cAAc,EAAE;CAWxC;AAiBD,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,CAanE;AAED,wBAAgB,YAAY,CACxB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC1B,SAAS,EAAE,MAAM,EAAE,EACnB,SAAS,EAAE,cAAc,EAAE,GAC5B,IAAI,CAGN;AA4BD,wBAAsB,OAAO,CACzB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC1B,SAAS,EAAE,MAAM,EAAE,EACnB,OAAO,EAAE,MAAM,EACf,iBAAiB,GAAE,iBAAiB,EAA4B,EAChE,gBAAgB,CAAC,EAAE,GAAG,EACtB,IAAI,eAAoB,GACzB,OAAO,CAAC,GAAG,CAAC,CAiBd;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,GAAG,GAAG,MAAM,EAAE,CA0BvD;AAED,wBAAsB,mBAAmB,CACrC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GAAG,gCAAgC,EAClD,SAAS,EAAE,MAAM,EAAE,EACnB,iBAAiB,GAAE,iBAAiB,EAA4B,EAChE,gBAAgB,CAAC,EAAE,GAAG,EACtB,IAAI,CAAC,EAAE,YAAY,GACpB,OAAO,CAAC,aAAa,CAAC,CAgCxB;AAED,wBAAsB,UAAU,CAC5B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GAAG,gCAAgC,EAClD,SAAS,EAAE,MAAM,EAAE,EACnB,iBAAiB,GAAE,iBAAiB,EAA4B,EAChE,gBAAgB,CAAC,EAAE,GAAG,EACtB,IAAI,CAAC,EAAE,YAAY,GACpB,OAAO,CAAC,aAAa,CAAC,CAYxB;AAED,wBAAsB,eAAe,CACjC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,GAAG,EACT,OAAO,EAAE,MAAM,GAAG,gCAAgC,EAClD,iBAAiB,GAAE,iBAAiB,EAA4B,EAChE,gBAAgB,CAAC,EAAE,GAAG,EACtB,IAAI,CAAC,EAAE,YAAY,GACpB,OAAO,CAAC,aAAa,CAAC,CAuDxB;AAED,wBAAsB,WAAW,CAC7B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GAAG,gCAAgC,EAClD,iBAAiB,GAAE,iBAAiB,EAA4B,EAChE,gBAAgB,CAAC,EAAE,GAAG,EACtB,IAAI,CAAC,EAAE,YAAY,GACpB,OAAO,CAAC,aAAa,CAAC,CAIxB"}
|
package/dist/compile/utils.js
CHANGED
|
@@ -11,8 +11,6 @@ const compiler_selection_1 = require("./compiler_selection");
|
|
|
11
11
|
const constants_1 = require("./constants");
|
|
12
12
|
const inference_1 = require("./inference");
|
|
13
13
|
const input_1 = require("./input");
|
|
14
|
-
const kinds_1 = require("./kinds");
|
|
15
|
-
const md_1 = require("./kinds/md");
|
|
16
14
|
class CompileInferenceError extends Error {
|
|
17
15
|
}
|
|
18
16
|
exports.CompileInferenceError = CompileInferenceError;
|
|
@@ -68,19 +66,12 @@ function getCompilerVersionStrategy(sources, versionOrStrategy) {
|
|
|
68
66
|
return versionOrStrategy;
|
|
69
67
|
}
|
|
70
68
|
async function compile(files, remapping, version, compilationOutput = [constants_1.CompilationOutput.ALL], compilerSettings, kind = constants_1.CompilerKind.WASM) {
|
|
71
|
-
const compilerInput = (0, input_1.createCompilerInput)(files, remapping,
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
69
|
+
const compilerInput = (0, input_1.createCompilerInput)(files, remapping, compilationOutput, compilerSettings);
|
|
70
|
+
const compiler = await (0, _1.getCompilerForVersion)(version, kind);
|
|
71
|
+
if (compiler === undefined) {
|
|
72
|
+
throw new Error(`Couldn't find "${kind}" compiler for version ${version} for current platform`);
|
|
75
73
|
}
|
|
76
|
-
|
|
77
|
-
const compiler = await (0, kinds_1.getNativeCompilerForVersion)(version);
|
|
78
|
-
if (compiler === undefined) {
|
|
79
|
-
throw new Error(`Couldn't find native compiler for version ${version} for current platform ${(0, md_1.getCompilerPrefixForOs)()}`);
|
|
80
|
-
}
|
|
81
|
-
return compiler.compile(compilerInput);
|
|
82
|
-
}
|
|
83
|
-
throw new Error(`Unsupported compiler kind "${kind}"`);
|
|
74
|
+
return compiler.compile(compilerInput);
|
|
84
75
|
}
|
|
85
76
|
exports.compile = compile;
|
|
86
77
|
function detectCompileErrors(data) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/compile/utils.ts"],"names":[],"mappings":";;;;;;AAAA,wDAA2B;AAC3B,gDAAwB;AACxB,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/compile/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builtins.d.ts","sourceRoot":"","sources":["../../src/types/builtins.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAE/C;;;GAGG;AACH,eAAO,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"builtins.d.ts","sourceRoot":"","sources":["../../src/types/builtins.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAE/C;;;GAGG;AACH,eAAO,MAAM,cAAc,mCAiNzB,CAAC;AAEH,eAAO,MAAM,qBAAqB,mCAgBhC,CAAC;AAEH;;;;;GAKG"}
|
package/dist/types/builtins.js
CHANGED
|
@@ -18,6 +18,11 @@ exports.BuiltinSymbols = new Map([
|
|
|
18
18
|
* @see https://github.com/ethereum/solidity/releases/tag/v0.8.4
|
|
19
19
|
*/
|
|
20
20
|
["bytes", [new ast_1.BuiltinStructType("bytes", new Map()), ">=0.8.4"]],
|
|
21
|
+
/**
|
|
22
|
+
* @todo Add support for concat()
|
|
23
|
+
* @see https://github.com/ethereum/solidity/releases/tag/v0.8.12
|
|
24
|
+
*/
|
|
25
|
+
["string", [new ast_1.BuiltinStructType("string", new Map()), ">=0.8.12"]],
|
|
21
26
|
[
|
|
22
27
|
"block",
|
|
23
28
|
[
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builtins.js","sourceRoot":"","sources":["../../src/types/builtins.ts"],"names":[],"mappings":";;;AAAA,gDAA6F;AAC7F,+BASe;AAGf;;;GAGG;AACU,QAAA,cAAc,GAAG,IAAI,GAAG,CAA+B;IAChE;;;OAGG;IACH,CAAC,KAAK,EAAE,CAAC,IAAI,uBAAiB,CAAC,KAAK,EAAE,IAAI,GAAG,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;IAE9D;;;OAGG;IACH,CAAC,OAAO,EAAE,CAAC,IAAI,uBAAiB,CAAC,OAAO,EAAE,IAAI,GAAG,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"builtins.js","sourceRoot":"","sources":["../../src/types/builtins.ts"],"names":[],"mappings":";;;AAAA,gDAA6F;AAC7F,+BASe;AAGf;;;GAGG;AACU,QAAA,cAAc,GAAG,IAAI,GAAG,CAA+B;IAChE;;;OAGG;IACH,CAAC,KAAK,EAAE,CAAC,IAAI,uBAAiB,CAAC,KAAK,EAAE,IAAI,GAAG,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;IAE9D;;;OAGG;IACH,CAAC,OAAO,EAAE,CAAC,IAAI,uBAAiB,CAAC,OAAO,EAAE,IAAI,GAAG,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;IAEjE;;;OAGG;IACH,CAAC,QAAQ,EAAE,CAAC,IAAI,uBAAiB,CAAC,QAAQ,EAAE,IAAI,GAAG,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;IACpE;QACI,OAAO;QACP;YACI,IAAI,uBAAiB,CACjB,OAAO,EACP,IAAI,GAAG,CAA+B;gBAClC,CAAC,UAAU,EAAE,CAAC,IAAI,iBAAW,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC,CAAC;gBACjD,CAAC,YAAY,EAAE,CAAC,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,UAAU,CAAC,CAAC;gBACrD,CAAC,UAAU,EAAE,CAAC,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,UAAU,CAAC,CAAC;gBACnD,CAAC,QAAQ,EAAE,CAAC,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,UAAU,CAAC,CAAC;gBACjD,CAAC,WAAW,EAAE,CAAC,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,UAAU,CAAC,CAAC;gBACpD;oBACI,WAAW;oBACX;wBACI,IAAI,kBAAY,CACZ,SAAS,EACT,CAAC,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,EACzB,CAAC,IAAI,oBAAc,CAAC,EAAE,CAAC,CAAC,EACxB,8BAAkB,CAAC,OAAO,EAC1B,mCAAuB,CAAC,IAAI,CAC/B;wBACD,QAAQ;qBACX;iBACJ;gBACD,CAAC,SAAS,EAAE,CAAC,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,SAAS,CAAC,CAAC;gBACjD,CAAC,SAAS,EAAE,CAAC,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,SAAS,CAAC,CAAC;aACpD,CAAC,CACL;YACD,UAAU;SACb;KACJ;IACD;QACI,KAAK;QACL;YACI,IAAI,uBAAiB,CACjB,KAAK,EACL,IAAI,GAAG,CAA+B;gBAClC,CAAC,MAAM,EAAE,CAAC,IAAI,iBAAW,CAAC,IAAI,eAAS,EAAE,EAAE,wBAAY,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC,CAAC;gBAC/E,CAAC,QAAQ,EAAE,CAAC,IAAI,iBAAW,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC,CAAC;gBAC/C,CAAC,KAAK,EAAE,CAAC,IAAI,oBAAc,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;gBAC5C,CAAC,OAAO,EAAE,CAAC,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,UAAU,CAAC,CAAC;gBAChD,CAAC,KAAK,EAAE,CAAC,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC;aAC/C,CAAC,CACL;YACD,UAAU;SACb;KACJ;IACD;QACI,IAAI;QACJ;YACI,IAAI,uBAAiB,CACjB,IAAI,EACJ,IAAI,GAAG,CAA+B;gBAClC,CAAC,UAAU,EAAE,CAAC,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,UAAU,CAAC,CAAC;gBACnD,CAAC,QAAQ,EAAE,CAAC,IAAI,iBAAW,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC,CAAC;aAClD,CAAC,CACL;YACD,UAAU;SACb;KACJ;IACD;QACI,WAAW;QACX;YACI,IAAI,kBAAY,CACZ,SAAS,EACT,CAAC,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,EACzB,CAAC,IAAI,oBAAc,CAAC,EAAE,CAAC,CAAC,EACxB,8BAAkB,CAAC,OAAO,EAC1B,mCAAuB,CAAC,IAAI,CAC/B;YACD,UAAU;SACb;KACJ;IACD;QACI,SAAS;QACT;YACI,IAAI,kBAAY,CACZ,SAAS,EACT,EAAE,EACF,CAAC,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,EACzB,8BAAkB,CAAC,OAAO,EAC1B,mCAAuB,CAAC,IAAI,CAC/B;YACD,UAAU;SACb;KACJ;IACD;QACI,KAAK;QACL;YACI,IAAI,kBAAY,CACZ,SAAS,EACT,EAAE,EACF,CAAC,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,EACzB,8BAAkB,CAAC,OAAO,EAC1B,mCAAuB,CAAC,IAAI,CAC/B;YACD,QAAQ;SACX;KACJ;IACD;QACI,QAAQ;QACR;YACI,IAAI,kBAAY,CACZ,SAAS,EACT,CAAC,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,EAC3E,CAAC,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,EACzB,8BAAkB,CAAC,OAAO,EAC1B,mCAAuB,CAAC,IAAI,CAC/B;YACD,UAAU;SACb;KACJ;IACD;QACI,QAAQ;QACR;YACI,IAAI,kBAAY,CACZ,SAAS,EACT,CAAC,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,EAC3E,CAAC,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,EACzB,8BAAkB,CAAC,OAAO,EAC1B,mCAAuB,CAAC,IAAI,CAC/B;YACD,UAAU;SACb;KACJ;IACD;;;;OAIG;IACH;QACI,WAAW;QACX;YACI,IAAI,kBAAY,CACZ,SAAS,EACT,CAAC,IAAI,iBAAW,CAAC,IAAI,eAAS,EAAE,EAAE,wBAAY,CAAC,MAAM,CAAC,CAAC,EACvD,CAAC,IAAI,oBAAc,CAAC,EAAE,CAAC,CAAC,EACxB,8BAAkB,CAAC,OAAO,EAC1B,mCAAuB,CAAC,IAAI,CAC/B;YACD,UAAU;SACb;KACJ;IACD;QACI,QAAQ;QACR;YACI,IAAI,kBAAY,CACZ,SAAS,EACT,CAAC,IAAI,iBAAW,CAAC,IAAI,eAAS,EAAE,EAAE,wBAAY,CAAC,MAAM,CAAC,CAAC,EACvD,CAAC,IAAI,oBAAc,CAAC,EAAE,CAAC,CAAC,EACxB,8BAAkB,CAAC,OAAO,EAC1B,mCAAuB,CAAC,IAAI,CAC/B;YACD,UAAU;SACb;KACJ;IACD;QACI,WAAW;QACX;YACI,IAAI,kBAAY,CACZ,SAAS,EACT,CAAC,IAAI,iBAAW,CAAC,IAAI,eAAS,EAAE,EAAE,wBAAY,CAAC,MAAM,CAAC,CAAC,EACvD,CAAC,IAAI,oBAAc,CAAC,EAAE,CAAC,CAAC,EACxB,8BAAkB,CAAC,OAAO,EAC1B,mCAAuB,CAAC,IAAI,CAC/B;YACD,UAAU;SACb;KACJ;IACD;QACI,WAAW;QACX;YACI,IAAI,kBAAY,CACZ,SAAS,EACT;gBACI,IAAI,oBAAc,CAAC,EAAE,CAAC;gBACtB,IAAI,aAAO,CAAC,CAAC,EAAE,KAAK,CAAC;gBACrB,IAAI,oBAAc,CAAC,EAAE,CAAC;gBACtB,IAAI,oBAAc,CAAC,EAAE,CAAC;aACzB,EACD,CAAC,IAAI,iBAAW,CAAC,KAAK,CAAC,CAAC,EACxB,8BAAkB,CAAC,OAAO,EAC1B,mCAAuB,CAAC,IAAI,CAC/B;YACD,UAAU;SACb;KACJ;IACD;;;OAGG;CACN,CAAC,CAAC;AAEU,QAAA,qBAAqB,GAAG,IAAI,GAAG,CAA+B;IACvE,CAAC,SAAS,EAAE,CAAC,IAAI,aAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,UAAU,CAAC,CAAC;IAClD;QACI,YAAY;QACZ;YACI,IAAI,kBAAY,CACZ,SAAS,EACT,CAAC,IAAI,iBAAW,CAAC,IAAI,eAAS,EAAE,EAAE,wBAAY,CAAC,MAAM,CAAC,CAAC,EACvD,CAAC,IAAI,cAAQ,EAAE,EAAE,IAAI,iBAAW,CAAC,IAAI,eAAS,EAAE,EAAE,wBAAY,CAAC,MAAM,CAAC,CAAC,EACvE,8BAAkB,CAAC,OAAO,EAC1B,mCAAuB,CAAC,IAAI,CAC/B;YACD,UAAU;SACb;KACJ;IACD,CAAC,MAAM,EAAE,CAAC,IAAI,iBAAW,CAAC,IAAI,eAAS,EAAE,EAAE,wBAAY,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,CAAC;CAC/E,CAAC,CAAC;AAEH;;;;;GAKG"}
|
package/dist/types/utils.js
CHANGED
package/dist/types/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/types/utils.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/types/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": "
|
|
3
|
+
"version": "9.0.0",
|
|
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": [
|
|
@@ -28,76 +28,13 @@
|
|
|
28
28
|
"prepare": "npm run build"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"axios": "^0.
|
|
31
|
+
"axios": "^0.26.0",
|
|
32
32
|
"findup-sync": "^5.0.0",
|
|
33
|
-
"fs-extra": "^10.0.
|
|
33
|
+
"fs-extra": "^10.0.1",
|
|
34
34
|
"jsel": "^1.1.6",
|
|
35
35
|
"minimist": "^1.2.5",
|
|
36
36
|
"semver": "^7.3.5",
|
|
37
|
-
"solc
|
|
38
|
-
"solc-0.4.14": "npm:solc@0.4.14",
|
|
39
|
-
"solc-0.4.15": "npm:solc@0.4.15",
|
|
40
|
-
"solc-0.4.16": "npm:solc@0.4.16",
|
|
41
|
-
"solc-0.4.17": "npm:solc@0.4.17",
|
|
42
|
-
"solc-0.4.18": "npm:solc@0.4.18",
|
|
43
|
-
"solc-0.4.19": "npm:solc@0.4.19",
|
|
44
|
-
"solc-0.4.20": "npm:solc@0.4.20",
|
|
45
|
-
"solc-0.4.21": "npm:solc@0.4.21",
|
|
46
|
-
"solc-0.4.22": "npm:solc@0.4.22",
|
|
47
|
-
"solc-0.4.23": "npm:solc@0.4.23",
|
|
48
|
-
"solc-0.4.24": "npm:solc@0.4.24",
|
|
49
|
-
"solc-0.4.25": "npm:solc@0.4.25",
|
|
50
|
-
"solc-0.4.26": "npm:solc@0.4.26",
|
|
51
|
-
"solc-0.5.0": "npm:solc@0.5.0",
|
|
52
|
-
"solc-0.5.1": "npm:solc@0.5.1",
|
|
53
|
-
"solc-0.5.10": "npm:solc@0.5.10",
|
|
54
|
-
"solc-0.5.11": "npm:solc@0.5.11",
|
|
55
|
-
"solc-0.5.12": "npm:solc@0.5.12",
|
|
56
|
-
"solc-0.5.13": "npm:solc@0.5.13",
|
|
57
|
-
"solc-0.5.14": "npm:solc@0.5.14",
|
|
58
|
-
"solc-0.5.15": "npm:solc@0.5.15",
|
|
59
|
-
"solc-0.5.16": "npm:solc@0.5.16",
|
|
60
|
-
"solc-0.5.17": "npm:solc@0.5.17",
|
|
61
|
-
"solc-0.5.2": "npm:solc@0.5.2",
|
|
62
|
-
"solc-0.5.3": "npm:solc@0.5.3",
|
|
63
|
-
"solc-0.5.4": "npm:solc@0.5.4",
|
|
64
|
-
"solc-0.5.5": "npm:solc@0.5.5",
|
|
65
|
-
"solc-0.5.6": "npm:solc@0.5.6",
|
|
66
|
-
"solc-0.5.7": "npm:solc@0.5.7",
|
|
67
|
-
"solc-0.5.8": "npm:solc@0.5.8",
|
|
68
|
-
"solc-0.5.9": "npm:solc@0.5.9",
|
|
69
|
-
"solc-0.6.0": "npm:solc@0.6.0",
|
|
70
|
-
"solc-0.6.1": "npm:solc@0.6.1",
|
|
71
|
-
"solc-0.6.10": "npm:solc@0.6.10",
|
|
72
|
-
"solc-0.6.11": "npm:solc@0.6.11",
|
|
73
|
-
"solc-0.6.12": "npm:solc@0.6.12",
|
|
74
|
-
"solc-0.6.2": "npm:solc@0.6.2",
|
|
75
|
-
"solc-0.6.3": "npm:solc@0.6.3",
|
|
76
|
-
"solc-0.6.4": "npm:solc@0.6.4",
|
|
77
|
-
"solc-0.6.5": "npm:solc@0.6.5",
|
|
78
|
-
"solc-0.6.6": "npm:solc@0.6.6",
|
|
79
|
-
"solc-0.6.7": "npm:solc@0.6.7",
|
|
80
|
-
"solc-0.6.8": "npm:solc@0.6.8",
|
|
81
|
-
"solc-0.6.9": "npm:solc@0.6.9",
|
|
82
|
-
"solc-0.7.0": "npm:solc@0.7.0",
|
|
83
|
-
"solc-0.7.1": "npm:solc@0.7.1",
|
|
84
|
-
"solc-0.7.2": "npm:solc@0.7.2",
|
|
85
|
-
"solc-0.7.3": "npm:solc@0.7.3",
|
|
86
|
-
"solc-0.7.4": "npm:solc@0.7.4",
|
|
87
|
-
"solc-0.7.5": "npm:solc@0.7.5",
|
|
88
|
-
"solc-0.7.6": "npm:solc@0.7.6",
|
|
89
|
-
"solc-0.8.0": "npm:solc@0.8.0",
|
|
90
|
-
"solc-0.8.1": "npm:solc-0.8.1-fixed@0.8.1",
|
|
91
|
-
"solc-0.8.10": "npm:solc@0.8.10",
|
|
92
|
-
"solc-0.8.11": "npm:solc@0.8.11",
|
|
93
|
-
"solc-0.8.2": "npm:solc@0.8.2",
|
|
94
|
-
"solc-0.8.3": "npm:solc@0.8.3",
|
|
95
|
-
"solc-0.8.4": "npm:solc@0.8.4",
|
|
96
|
-
"solc-0.8.5": "npm:solc@0.8.5",
|
|
97
|
-
"solc-0.8.6": "npm:solc@0.8.6",
|
|
98
|
-
"solc-0.8.7": "npm:solc@0.8.7-fixed",
|
|
99
|
-
"solc-0.8.8": "npm:solc@0.8.8",
|
|
100
|
-
"solc-0.8.9": "npm:solc@0.8.9",
|
|
37
|
+
"solc": "^0.8.12",
|
|
101
38
|
"src-location": "^1.1.0",
|
|
102
39
|
"web3-eth-abi": "^1.7.0"
|
|
103
40
|
},
|
|
@@ -105,22 +42,22 @@
|
|
|
105
42
|
"@types/fs-extra": "^9.0.13",
|
|
106
43
|
"@types/minimist": "^1.2.2",
|
|
107
44
|
"@types/mocha": "^9.1.0",
|
|
108
|
-
"@types/node": "^
|
|
45
|
+
"@types/node": "^16.11.25",
|
|
109
46
|
"@types/semver": "^7.3.9",
|
|
110
|
-
"@typescript-eslint/eslint-plugin": "^5.
|
|
111
|
-
"@typescript-eslint/parser": "^5.
|
|
47
|
+
"@typescript-eslint/eslint-plugin": "^5.12.1",
|
|
48
|
+
"@typescript-eslint/parser": "^5.12.1",
|
|
112
49
|
"codecov": "^3.8.3",
|
|
113
|
-
"eslint": "^8.
|
|
114
|
-
"eslint-config-prettier": "^8.
|
|
50
|
+
"eslint": "^8.9.0",
|
|
51
|
+
"eslint-config-prettier": "^8.4.0",
|
|
115
52
|
"eslint-plugin-prettier": "^4.0.0",
|
|
116
|
-
"expect": "^27.
|
|
117
|
-
"mocha": "^9.1
|
|
53
|
+
"expect": "^27.5.1",
|
|
54
|
+
"mocha": "^9.2.1",
|
|
118
55
|
"nyc": "^15.1.0",
|
|
119
56
|
"peggy": "^1.2.0",
|
|
120
57
|
"prettier": "2.5.1",
|
|
121
|
-
"ts-node": "^10.
|
|
58
|
+
"ts-node": "^10.5.0",
|
|
122
59
|
"ts-pegjs": "^1.2.1",
|
|
123
|
-
"typedoc": "^0.22.
|
|
60
|
+
"typedoc": "^0.22.12",
|
|
124
61
|
"typescript": "^4.5.5"
|
|
125
62
|
},
|
|
126
63
|
"homepage": "https://consensys.github.io/solc-typed-ast",
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { SolcInput } from "../input";
|
|
2
|
-
import { Compiler } from "./compiler";
|
|
3
|
-
declare class NativeCompiler extends Compiler {
|
|
4
|
-
readonly version: string;
|
|
5
|
-
readonly path: string;
|
|
6
|
-
constructor(version: string, path: string);
|
|
7
|
-
compile(inputJson: SolcInput): Promise<any>;
|
|
8
|
-
}
|
|
9
|
-
export declare function getNativeCompilerForVersion(version: string): Promise<NativeCompiler | undefined>;
|
|
10
|
-
export {};
|
|
11
|
-
//# sourceMappingURL=native.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"native.d.ts","sourceRoot":"","sources":["../../../src/compile/kinds/native.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAYtC,cAAM,cAAe,SAAQ,QAAQ;aACL,OAAO,EAAE,MAAM;aAAkB,IAAI,EAAE,MAAM;gBAA7C,OAAO,EAAE,MAAM,EAAkB,IAAI,EAAE,MAAM;IAInE,OAAO,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;CA0CpD;AAED,wBAAsB,2BAA2B,CAC7C,OAAO,EAAE,MAAM,GAChB,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAkCrC"}
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
-
}) : function(o, v) {
|
|
12
|
-
o["default"] = v;
|
|
13
|
-
});
|
|
14
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
-
if (mod && mod.__esModule) return mod;
|
|
16
|
-
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
-
__setModuleDefault(result, mod);
|
|
19
|
-
return result;
|
|
20
|
-
};
|
|
21
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
22
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
23
|
-
};
|
|
24
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
-
exports.getNativeCompilerForVersion = void 0;
|
|
26
|
-
const child_process_1 = require("child_process");
|
|
27
|
-
const axios_1 = __importDefault(require("axios"));
|
|
28
|
-
const stream = __importStar(require("stream"));
|
|
29
|
-
const util_1 = require("util");
|
|
30
|
-
const compiler_1 = require("./compiler");
|
|
31
|
-
const md_1 = require("./md");
|
|
32
|
-
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
33
|
-
const path_1 = __importDefault(require("path"));
|
|
34
|
-
const utils_1 = require("../../misc/utils");
|
|
35
|
-
class NativeCompiler extends compiler_1.Compiler {
|
|
36
|
-
constructor(version, path) {
|
|
37
|
-
super(version);
|
|
38
|
-
this.version = version;
|
|
39
|
-
this.path = path;
|
|
40
|
-
}
|
|
41
|
-
async compile(inputJson) {
|
|
42
|
-
const child = (0, child_process_1.spawn)(this.path, ["--standard-json"], {});
|
|
43
|
-
return new Promise((resolve, reject) => {
|
|
44
|
-
child.stdin.write(JSON.stringify(inputJson), "utf-8");
|
|
45
|
-
child.stdin.end();
|
|
46
|
-
let stdout = "";
|
|
47
|
-
let stderr = "";
|
|
48
|
-
child.stdout.on("data", (data) => {
|
|
49
|
-
stdout += data;
|
|
50
|
-
});
|
|
51
|
-
child.stderr.on("data", (data) => {
|
|
52
|
-
stderr += data;
|
|
53
|
-
});
|
|
54
|
-
child.on("close", (code) => {
|
|
55
|
-
if (code !== 0) {
|
|
56
|
-
reject(`Compiler exited with code ${code}, stderr: ${stderr}`);
|
|
57
|
-
return;
|
|
58
|
-
}
|
|
59
|
-
if (stderr !== "") {
|
|
60
|
-
reject(`Compiler exited with non-empty stderr: ${stderr}`);
|
|
61
|
-
return;
|
|
62
|
-
}
|
|
63
|
-
let outJson;
|
|
64
|
-
try {
|
|
65
|
-
outJson = JSON.parse(stdout);
|
|
66
|
-
}
|
|
67
|
-
catch (e) {
|
|
68
|
-
reject(e);
|
|
69
|
-
return;
|
|
70
|
-
}
|
|
71
|
-
resolve(outJson);
|
|
72
|
-
});
|
|
73
|
-
});
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
async function getNativeCompilerForVersion(version) {
|
|
77
|
-
const prefix = (0, md_1.getCompilerPrefixForOs)();
|
|
78
|
-
if (prefix === undefined) {
|
|
79
|
-
return undefined;
|
|
80
|
-
}
|
|
81
|
-
const md = await (0, md_1.getCompilerMDForPlatform)(prefix);
|
|
82
|
-
const compilerFileName = md.releases[version];
|
|
83
|
-
if (compilerFileName === undefined) {
|
|
84
|
-
return undefined;
|
|
85
|
-
}
|
|
86
|
-
const compilerLocalPath = path_1.default.join(md_1.CACHE_DIR, prefix, compilerFileName);
|
|
87
|
-
(0, utils_1.assert)((0, md_1.isSubDir)(compilerLocalPath, md_1.CACHE_DIR), `Path ${compilerLocalPath} escapes from cache dir ${md_1.CACHE_DIR}`);
|
|
88
|
-
if (!fs_extra_1.default.existsSync(compilerLocalPath)) {
|
|
89
|
-
const response = await (0, axios_1.default)({
|
|
90
|
-
method: "GET",
|
|
91
|
-
url: `${md_1.BINARIES_URL}/${prefix}/${compilerFileName}`,
|
|
92
|
-
responseType: "stream"
|
|
93
|
-
});
|
|
94
|
-
const target = fs_extra_1.default.createWriteStream(compilerLocalPath, { mode: 0o555 });
|
|
95
|
-
const pipeline = (0, util_1.promisify)(stream.pipeline);
|
|
96
|
-
await pipeline(response.data, target);
|
|
97
|
-
}
|
|
98
|
-
return new NativeCompiler(version, compilerLocalPath);
|
|
99
|
-
}
|
|
100
|
-
exports.getNativeCompilerForVersion = getNativeCompilerForVersion;
|
|
101
|
-
//# sourceMappingURL=native.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"native.js","sourceRoot":"","sources":["../../../src/compile/kinds/native.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { SolcInput } from "../input";
|
|
2
|
-
import { Compiler } from "./compiler";
|
|
3
|
-
export declare abstract class WasmCompiler extends Compiler {
|
|
4
|
-
get moduleName(): string;
|
|
5
|
-
get module(): any;
|
|
6
|
-
}
|
|
7
|
-
export declare class WasmCompiler04 extends WasmCompiler {
|
|
8
|
-
constructor(version: string);
|
|
9
|
-
compile(inputJson: SolcInput): Promise<any>;
|
|
10
|
-
}
|
|
11
|
-
export declare class WasmCompiler05 extends WasmCompiler {
|
|
12
|
-
constructor(version: string);
|
|
13
|
-
compile(inputJson: SolcInput): Promise<any>;
|
|
14
|
-
}
|
|
15
|
-
export declare class WasmCompiler06OrNewer extends WasmCompiler {
|
|
16
|
-
constructor(version: string);
|
|
17
|
-
compile(inputJson: SolcInput): Promise<any>;
|
|
18
|
-
}
|
|
19
|
-
export declare function getWasmCompilerForVersion(version: string): WasmCompiler;
|
|
20
|
-
//# sourceMappingURL=wasm.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"wasm.d.ts","sourceRoot":"","sources":["../../../src/compile/kinds/wasm.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAUtC,8BAAsB,YAAa,SAAQ,QAAQ;IAC/C,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,MAAM,IAAI,GAAG,CAEhB;CACJ;AAED,qBAAa,cAAe,SAAQ,YAAY;gBAChC,OAAO,EAAE,MAAM;IAMrB,OAAO,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;CAGpD;AAED,qBAAa,cAAe,SAAQ,YAAY;gBAChC,OAAO,EAAE,MAAM;IAMrB,OAAO,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;CAKpD;AAED,qBAAa,qBAAsB,SAAQ,YAAY;gBACvC,OAAO,EAAE,MAAM;IAMrB,OAAO,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;CAOpD;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAgBvE"}
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getWasmCompilerForVersion = exports.WasmCompiler06OrNewer = exports.WasmCompiler05 = exports.WasmCompiler04 = exports.WasmCompiler = void 0;
|
|
4
|
-
const semver_1 = require("semver");
|
|
5
|
-
const __1 = require("..");
|
|
6
|
-
const misc_1 = require("../../misc");
|
|
7
|
-
const compiler_1 = require("./compiler");
|
|
8
|
-
/**
|
|
9
|
-
* Imports are handled by the preprecessing parser,
|
|
10
|
-
* so there is no need to use finder callbacks.
|
|
11
|
-
*/
|
|
12
|
-
const nullFinder = () => {
|
|
13
|
-
return { error: "Finders not supported" };
|
|
14
|
-
};
|
|
15
|
-
class WasmCompiler extends compiler_1.Compiler {
|
|
16
|
-
get moduleName() {
|
|
17
|
-
return `solc-${this.version}`;
|
|
18
|
-
}
|
|
19
|
-
get module() {
|
|
20
|
-
return require(this.moduleName);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
exports.WasmCompiler = WasmCompiler;
|
|
24
|
-
class WasmCompiler04 extends WasmCompiler {
|
|
25
|
-
constructor(version) {
|
|
26
|
-
super(version);
|
|
27
|
-
(0, misc_1.assert)((0, semver_1.satisfies)(version, "0.4"), `Can't build WasmCompiler04 with version ${version}`);
|
|
28
|
-
}
|
|
29
|
-
async compile(inputJson) {
|
|
30
|
-
return this.module.compile(inputJson, 1, nullFinder);
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
exports.WasmCompiler04 = WasmCompiler04;
|
|
34
|
-
class WasmCompiler05 extends WasmCompiler {
|
|
35
|
-
constructor(version) {
|
|
36
|
-
super(version);
|
|
37
|
-
(0, misc_1.assert)((0, semver_1.satisfies)(version, "0.5"), `Can't build WasmCompiler04 with version ${version}`);
|
|
38
|
-
}
|
|
39
|
-
async compile(inputJson) {
|
|
40
|
-
const output = this.module.compile(JSON.stringify(inputJson), nullFinder);
|
|
41
|
-
return JSON.parse(output);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
exports.WasmCompiler05 = WasmCompiler05;
|
|
45
|
-
class WasmCompiler06OrNewer extends WasmCompiler {
|
|
46
|
-
constructor(version) {
|
|
47
|
-
super(version);
|
|
48
|
-
(0, misc_1.assert)((0, semver_1.gte)(version, "0.6.0"), `Can't build WasmCompiler04 with version ${version}`);
|
|
49
|
-
}
|
|
50
|
-
async compile(inputJson) {
|
|
51
|
-
const callbacks = { import: nullFinder };
|
|
52
|
-
const output = this.module.compile(JSON.stringify(inputJson), callbacks);
|
|
53
|
-
return JSON.parse(output);
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
exports.WasmCompiler06OrNewer = WasmCompiler06OrNewer;
|
|
57
|
-
function getWasmCompilerForVersion(version) {
|
|
58
|
-
if (!(0, __1.isExact)(version)) {
|
|
59
|
-
throw new Error("Wasm compiler version string must contain exact SemVer-formatted version without any operators");
|
|
60
|
-
}
|
|
61
|
-
if ((0, semver_1.satisfies)(version, "0.4")) {
|
|
62
|
-
return new WasmCompiler04(version);
|
|
63
|
-
}
|
|
64
|
-
if ((0, semver_1.satisfies)(version, "0.5")) {
|
|
65
|
-
return new WasmCompiler05(version);
|
|
66
|
-
}
|
|
67
|
-
return new WasmCompiler06OrNewer(version);
|
|
68
|
-
}
|
|
69
|
-
exports.getWasmCompilerForVersion = getWasmCompilerForVersion;
|
|
70
|
-
//# sourceMappingURL=wasm.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"wasm.js","sourceRoot":"","sources":["../../../src/compile/kinds/wasm.ts"],"names":[],"mappings":";;;AAAA,mCAAwC;AACxC,0BAA6B;AAC7B,qCAAoC;AAEpC,yCAAsC;AAEtC;;;GAGG;AACH,MAAM,UAAU,GAAG,GAAsB,EAAE;IACvC,OAAO,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC;AAC9C,CAAC,CAAC;AAEF,MAAsB,YAAa,SAAQ,mBAAQ;IAC/C,IAAI,UAAU;QACV,OAAO,QAAQ,IAAI,CAAC,OAAO,EAAE,CAAC;IAClC,CAAC;IAED,IAAI,MAAM;QACN,OAAO,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC;CACJ;AARD,oCAQC;AAED,MAAa,cAAe,SAAQ,YAAY;IAC5C,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,CAAC,CAAC;QAEf,IAAA,aAAM,EAAC,IAAA,kBAAS,EAAC,OAAO,EAAE,KAAK,CAAC,EAAE,2CAA2C,OAAO,EAAE,CAAC,CAAC;IAC5F,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAoB;QAC9B,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;IACzD,CAAC;CACJ;AAVD,wCAUC;AAED,MAAa,cAAe,SAAQ,YAAY;IAC5C,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,CAAC,CAAC;QAEf,IAAA,aAAM,EAAC,IAAA,kBAAS,EAAC,OAAO,EAAE,KAAK,CAAC,EAAE,2CAA2C,OAAO,EAAE,CAAC,CAAC;IAC5F,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAoB;QAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,UAAU,CAAC,CAAC;QAE1E,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;CACJ;AAZD,wCAYC;AAED,MAAa,qBAAsB,SAAQ,YAAY;IACnD,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,CAAC,CAAC;QAEf,IAAA,aAAM,EAAC,IAAA,YAAG,EAAC,OAAO,EAAE,OAAO,CAAC,EAAE,2CAA2C,OAAO,EAAE,CAAC,CAAC;IACxF,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAoB;QAC9B,MAAM,SAAS,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;QAEzC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC;QAEzE,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;CACJ;AAdD,sDAcC;AAED,SAAgB,yBAAyB,CAAC,OAAe;IACrD,IAAI,CAAC,IAAA,WAAO,EAAC,OAAO,CAAC,EAAE;QACnB,MAAM,IAAI,KAAK,CACX,gGAAgG,CACnG,CAAC;KACL;IAED,IAAI,IAAA,kBAAS,EAAC,OAAO,EAAE,KAAK,CAAC,EAAE;QAC3B,OAAO,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;KACtC;IAED,IAAI,IAAA,kBAAS,EAAC,OAAO,EAAE,KAAK,CAAC,EAAE;QAC3B,OAAO,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;KACtC;IAED,OAAO,IAAI,qBAAqB,CAAC,OAAO,CAAC,CAAC;AAC9C,CAAC;AAhBD,8DAgBC"}
|