Skip to content

Commit f6f412c

Browse files
committed
add solidity-parser/parser
1 parent 8888701 commit f6f412c

File tree

4 files changed

+58
-0
lines changed

4 files changed

+58
-0
lines changed

website/package.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
"author": "Felix Kling",
1111
"devDependencies": {
1212
"@babel/core": "^7.16.0",
13+
"@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6",
1314
"@babel/plugin-transform-runtime": "^7.16.0",
1415
"@babel/preset-env": "^7.16.0",
1516
"@babel/preset-react": "^7.16.0",
@@ -53,6 +54,7 @@
5354
"@glimmer/syntax": "^0.83.1",
5455
"@humanwhocodes/momoa": "^2.0.0",
5556
"@mdx-js/mdx": "^1.5.8",
57+
"@solidity-parser/parser": "^0.20.0",
5658
"@swc/wasm-web": "^1.2.146",
5759
"@typescript-eslint/parser": "^5.59.7",
5860
"@vue/compiler-dom": "^3.0.0-rc.10",
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
import pkg from '@solidity-parser/parser/package.json';
2+
import defaultParserInterface from '../utils/defaultParserInterface';
3+
4+
const ID = 'solidity-parser-parser';
5+
6+
export default {
7+
...defaultParserInterface,
8+
9+
id: ID,
10+
displayName: ID,
11+
version: pkg.version,
12+
homepage: pkg.homepage || 'https://github.com/solidity-parser/parser',
13+
14+
loadParser(callback) {
15+
require(['@solidity-parser/parser'], callback);
16+
},
17+
18+
parse(parser, code, options) {
19+
return parser.parse(code, options);
20+
},
21+
22+
opensByDefault(node, key) {
23+
return node.type === 'SourceUnit' ||
24+
node.type === 'ContractDefinition' ||
25+
key === 'children' ||
26+
key === 'subNodes' ||
27+
key === 'body'
28+
},
29+
30+
getDefaultOptions() {
31+
return {
32+
range: true,
33+
loc: false,
34+
tolerant: false,
35+
};
36+
},
37+
38+
_getSettingsConfiguration() {
39+
return {
40+
fields: [
41+
'range',
42+
'loc',
43+
'tolerant',
44+
],
45+
};
46+
},
47+
48+
};
49+

website/webpack.config.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -216,6 +216,7 @@ module.exports = Object.assign({
216216
path.join(__dirname, 'node_modules', 'tslint'),
217217
path.join(__dirname, 'node_modules', 'tslib'),
218218
path.join(__dirname, 'node_modules', 'svelte'),
219+
path.join(__dirname, 'node_modules', '@solidity-parser/parser'),
219220
path.join(__dirname, 'src'),
220221
],
221222
loader: 'babel-loader',
@@ -235,6 +236,7 @@ module.exports = Object.assign({
235236
],
236237
plugins: [
237238
require.resolve('@babel/plugin-transform-runtime'),
239+
require.resolve('@babel/plugin-proposal-nullish-coalescing-operator'),
238240
],
239241
},
240242
},

website/yarn.lock

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1423,6 +1423,11 @@
14231423
resolved "https://registry.yarnpkg.com/@simple-dom/interface/-/interface-1.4.0.tgz#e8feea579232017f89b0138e2726facda6fbb71f"
14241424
integrity sha512-l5qumKFWU0S+4ZzMaLXFU8tQZsicHEMEyAxI5kDFGhJsRqDwe0a7/iPA/GdxlGyDKseQQAgIz5kzU7eXTrlSpA==
14251425

1426+
"@solidity-parser/parser@^0.20.0":
1427+
version "0.20.0"
1428+
resolved "https://registry.yarnpkg.com/@solidity-parser/parser/-/parser-0.20.0.tgz#e221b2f29a8c2fbeab56fea6d135e28b569b9ba9"
1429+
integrity sha512-eYOX1xI9ssc3AIZtKPdE2chG1OT9S74O16b8GhWGab63NS5g4jyQgW5OiwUiX9ACL0FR24rVDaHo+BB0bRSHhQ==
1430+
14261431
"@swc/wasm-web@^1.2.146":
14271432
version "1.2.146"
14281433
resolved "https://registry.yarnpkg.com/@swc/wasm-web/-/wasm-web-1.2.146.tgz#f8c0bc7204b782d94beb6f99be2c776cd19455aa"

0 commit comments

Comments
 (0)