solc-typed-ast 11.0.0 → 11.0.1

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.
@@ -1,14 +1,20 @@
1
1
  import Decimal from "decimal.js";
2
- import { Expression } from "../ast";
2
+ import { BinaryOperation, EtherUnit, Expression, Literal, LiteralKind, TimeUnit, UnaryOperation } from "../ast";
3
3
  export declare type Value = Decimal | boolean | string | bigint;
4
4
  export declare class EvalError extends Error {
5
- expr: Expression;
6
- constructor(e: Expression, msg: string);
5
+ expr?: Expression;
6
+ constructor(msg: string, expr?: Expression);
7
7
  }
8
8
  export declare class NonConstantExpressionError extends EvalError {
9
- constructor(e: Expression);
9
+ constructor(expr: Expression);
10
10
  }
11
11
  export declare function isConstant(expr: Expression): boolean;
12
+ export declare function evalLiteralImpl(kind: LiteralKind, value: string, subdenomination?: TimeUnit | EtherUnit): Value;
13
+ export declare function evalUnaryImpl(operator: string, value: Value): Value;
14
+ export declare function evalBinaryImpl(operator: string, left: Value, right: Value): Value;
15
+ export declare function evalLiteral(node: Literal): Value;
16
+ export declare function evalUnary(node: UnaryOperation): Value;
17
+ export declare function evalBinary(node: BinaryOperation): Value;
12
18
  /**
13
19
  * Given a constant expression `expr` evaluate it to a concrete `Value`.
14
20
  * If `expr` is not constant throw `NonConstantExpressionError`.
@@ -16,5 +22,5 @@ export declare function isConstant(expr: Expression): boolean;
16
22
  * TODO: The order of some operations changed in some version.
17
23
  * So perhaps to be fully precise here we will need a compiler version too?
18
24
  */
19
- export declare function evalConstantExpr(expr: Expression): Value;
25
+ export declare function evalConstantExpr(node: Expression): Value;
20
26
  //# sourceMappingURL=eval_const.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"eval_const.d.ts","sourceRoot":"","sources":["../../src/types/eval_const.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,YAAY,CAAC;AACjC,OAAO,EAGH,UAAU,EASb,MAAM,QAAQ,CAAC;AAWhB,oBAAY,KAAK,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AAExD,qBAAa,SAAU,SAAQ,KAAK;IAChC,IAAI,EAAE,UAAU,CAAC;gBAEL,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM;CAKzC;AAED,qBAAa,0BAA2B,SAAQ,SAAS;gBACzC,CAAC,EAAE,UAAU;CAG5B;AAcD,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CA6DpD;AAoPD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,GAAG,KAAK,CA+CxD"}
1
+ {"version":3,"file":"eval_const.d.ts","sourceRoot":"","sources":["../../src/types/eval_const.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,YAAY,CAAC;AACjC,OAAO,EACH,eAAe,EAEf,SAAS,EACT,UAAU,EAIV,OAAO,EACP,WAAW,EACX,QAAQ,EAER,cAAc,EAEjB,MAAM,QAAQ,CAAC;AAWhB,oBAAY,KAAK,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AAExD,qBAAa,SAAU,SAAQ,KAAK;IAChC,IAAI,CAAC,EAAE,UAAU,CAAC;gBAEN,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU;CAK7C;AAED,qBAAa,0BAA2B,SAAQ,SAAS;gBACzC,IAAI,EAAE,UAAU;CAG/B;AAkBD,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CA6DpD;AAED,wBAAgB,eAAe,CAC3B,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,MAAM,EACb,eAAe,CAAC,EAAE,QAAQ,GAAG,SAAS,GACvC,KAAK,CAmCP;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,KAAK,CAsCnE;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,KAAK,CAwHjF;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,KAAK,CAchD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,cAAc,GAAG,KAAK,CAUrD;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,eAAe,GAAG,KAAK,CAcvD;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,GAAG,KAAK,CA+CxD"}
@@ -3,7 +3,7 @@ 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.evalConstantExpr = exports.isConstant = exports.NonConstantExpressionError = exports.EvalError = void 0;
6
+ exports.evalConstantExpr = exports.evalBinary = exports.evalUnary = exports.evalLiteral = exports.evalBinaryImpl = exports.evalUnaryImpl = exports.evalLiteralImpl = exports.isConstant = exports.NonConstantExpressionError = exports.EvalError = void 0;
7
7
  const decimal_js_1 = __importDefault(require("decimal.js"));
8
8
  const ast_1 = require("../ast");
9
9
  const misc_1 = require("../misc");
@@ -16,18 +16,21 @@ const utils_1 = require("./utils");
16
16
  */
17
17
  decimal_js_1.default.set({ precision: 100 });
18
18
  class EvalError extends Error {
19
- constructor(e, msg) {
19
+ constructor(msg, expr) {
20
20
  super(msg);
21
- this.expr = e;
21
+ this.expr = expr;
22
22
  }
23
23
  }
24
24
  exports.EvalError = EvalError;
25
25
  class NonConstantExpressionError extends EvalError {
26
- constructor(e) {
27
- super(e, `Found non-constant expression ${(0, misc_1.pp)(e)} during constant evaluation`);
26
+ constructor(expr) {
27
+ super(`Found non-constant expression ${(0, misc_1.pp)(expr)} during constant evaluation`, expr);
28
28
  }
29
29
  }
30
30
  exports.NonConstantExpressionError = NonConstantExpressionError;
31
+ function str(value) {
32
+ return value instanceof decimal_js_1.default ? value.toString() : (0, misc_1.pp)(value);
33
+ }
31
34
  function promoteToDec(v) {
32
35
  if (!(typeof v === "bigint" || v instanceof decimal_js_1.default)) {
33
36
  throw new Error(`Expected number not ${v}`);
@@ -82,23 +85,22 @@ function isConstant(expr) {
82
85
  return false;
83
86
  }
84
87
  exports.isConstant = isConstant;
85
- function evalLiteral(expr) {
86
- if (expr.kind === ast_1.LiteralKind.Bool) {
87
- return expr.value === "true";
88
- }
89
- if (expr.kind === ast_1.LiteralKind.String || expr.kind === ast_1.LiteralKind.UnicodeString) {
90
- return expr.value;
88
+ function evalLiteralImpl(kind, value, subdenomination) {
89
+ if (kind === ast_1.LiteralKind.Bool) {
90
+ return value === "true";
91
91
  }
92
- if (expr.kind === ast_1.LiteralKind.HexString) {
93
- return expr.hexValue;
92
+ if (kind === ast_1.LiteralKind.String ||
93
+ kind === ast_1.LiteralKind.UnicodeString ||
94
+ kind === ast_1.LiteralKind.HexString) {
95
+ return value;
94
96
  }
95
- if (expr.kind === ast_1.LiteralKind.Number) {
96
- const dec = new decimal_js_1.default(expr.value.replaceAll("_", ""));
97
+ if (kind === ast_1.LiteralKind.Number) {
98
+ const dec = new decimal_js_1.default(value.replaceAll("_", ""));
97
99
  const val = dec.isInteger() ? BigInt(dec.toFixed()) : dec;
98
- if (expr.subdenomination !== undefined) {
99
- const multiplier = utils_1.SUBDENOMINATION_MULTIPLIERS.get(expr.subdenomination);
100
+ if (subdenomination) {
101
+ const multiplier = utils_1.SUBDENOMINATION_MULTIPLIERS.get(subdenomination);
100
102
  if (multiplier === undefined) {
101
- throw new EvalError(expr, `Unknown denomination ${expr.subdenomination}`);
103
+ throw new EvalError(`Unknown denomination ${subdenomination}`);
102
104
  }
103
105
  if (val instanceof decimal_js_1.default) {
104
106
  return demoteFromDec(val.times(multiplier));
@@ -107,159 +109,176 @@ function evalLiteral(expr) {
107
109
  }
108
110
  return val;
109
111
  }
110
- throw new EvalError(expr, `Unsupported literal kind "${expr.kind}"`);
112
+ throw new EvalError(`Unsupported literal kind "${kind}"`);
111
113
  }
112
- function evalUnary(expr) {
113
- const subVal = evalConstantExpr(expr.vSubExpression);
114
- if (expr.operator === "!") {
115
- if (!(typeof subVal === "boolean")) {
116
- throw new EvalError(expr.vSubExpression, `Expected a boolean in ${(0, misc_1.pp)(expr.vSubExpression)} not ${subVal}`);
114
+ exports.evalLiteralImpl = evalLiteralImpl;
115
+ function evalUnaryImpl(operator, value) {
116
+ if (operator === "!") {
117
+ if (typeof value === "boolean") {
118
+ return !value;
117
119
  }
118
- return !subVal;
120
+ throw new EvalError(`Expected ${str(value)} to be boolean`);
119
121
  }
120
- if (expr.operator === "~") {
121
- if (typeof subVal === "bigint") {
122
- return ~subVal;
122
+ if (operator === "~") {
123
+ if (typeof value === "bigint") {
124
+ return ~value;
123
125
  }
124
- throw new EvalError(expr.vSubExpression, `Expected an integer number in ${(0, misc_1.pp)(expr.vSubExpression)} not ${subVal}`);
126
+ throw new EvalError(`Expected ${str(value)} to be a bigint`);
125
127
  }
126
- if (expr.operator === "+") {
127
- if (subVal instanceof decimal_js_1.default || typeof subVal === "bigint") {
128
- return subVal;
128
+ if (operator === "+") {
129
+ if (value instanceof decimal_js_1.default || typeof value === "bigint") {
130
+ return value;
129
131
  }
130
- throw new EvalError(expr.vSubExpression, `Expected a number in ${(0, misc_1.pp)(expr.vSubExpression)} not ${subVal}`);
132
+ throw new EvalError(`Expected ${str(value)} to be a bigint or a decimal`);
131
133
  }
132
- if (expr.operator === "-") {
133
- if (subVal instanceof decimal_js_1.default) {
134
- return subVal.negated();
134
+ if (operator === "-") {
135
+ if (value instanceof decimal_js_1.default) {
136
+ return value.negated();
135
137
  }
136
- if (typeof subVal === "bigint") {
137
- return -subVal;
138
+ if (typeof value === "bigint") {
139
+ return -value;
138
140
  }
139
- throw new EvalError(expr.vSubExpression, `Expected a number in ${(0, misc_1.pp)(expr.vSubExpression)} not ${subVal}`);
140
- }
141
- throw new EvalError(expr, `NYI unary operator ${expr.operator}`);
142
- }
143
- function evalBinaryLogic(expr, lVal, rVal) {
144
- const op = expr.operator;
145
- if (!(typeof lVal === "boolean" && typeof lVal === "boolean")) {
146
- throw new EvalError(expr, `${op} expects booleans not ${lVal} and ${rVal}`);
141
+ throw new EvalError(`Expected ${str(value)} to be a bigint or a decimal`);
147
142
  }
148
- if (op === "&&") {
149
- return lVal && rVal;
150
- }
151
- if (op === "||") {
152
- return lVal || rVal;
153
- }
154
- throw new Error(`Unknown logic op ${op}`);
143
+ throw new EvalError(`Unable to process ${operator}${str(value)}`);
155
144
  }
156
- function evalBinaryEquality(expr, lVal, rVal) {
157
- let equal;
158
- if (typeof lVal === "string" || typeof rVal === "string") {
159
- throw new EvalError(expr, `Comparison not allowed for strings ${lVal} and ${rVal}`);
160
- }
161
- if (lVal instanceof decimal_js_1.default && rVal instanceof decimal_js_1.default) {
162
- equal = lVal.equals(rVal);
163
- }
164
- else {
165
- equal = lVal === rVal;
166
- }
167
- if (expr.operator === "==") {
168
- return equal;
169
- }
170
- if (expr.operator === "!=") {
171
- return !equal;
172
- }
173
- throw new EvalError(expr, `Unknown equality op ${expr.operator}`);
174
- }
175
- function evalBinaryComparison(expr, lVal, rVal) {
176
- const op = expr.operator;
177
- const lDec = promoteToDec(lVal);
178
- const rDec = promoteToDec(rVal);
179
- if (op === "<") {
180
- return lDec.lessThan(rDec);
145
+ exports.evalUnaryImpl = evalUnaryImpl;
146
+ function evalBinaryImpl(operator, left, right) {
147
+ if (utils_1.BINARY_OPERATOR_GROUPS.Logical.includes(operator)) {
148
+ if (!(typeof left === "boolean" && typeof right === "boolean")) {
149
+ throw new EvalError(`${operator} expects booleans not ${str(left)} and ${str(right)}`);
150
+ }
151
+ if (operator === "&&") {
152
+ return left && right;
153
+ }
154
+ if (operator === "||") {
155
+ return left || right;
156
+ }
157
+ throw new EvalError(`Unknown logical operator ${operator}`);
181
158
  }
182
- if (op === "<=") {
183
- return lDec.lessThanOrEqualTo(rDec);
159
+ if (utils_1.BINARY_OPERATOR_GROUPS.Equality.includes(operator)) {
160
+ if (typeof left === "string" || typeof right === "string") {
161
+ throw new EvalError(`${operator} not allowed for strings ${str(left)} and ${str(right)}`);
162
+ }
163
+ let isEqual;
164
+ if (left instanceof decimal_js_1.default && right instanceof decimal_js_1.default) {
165
+ isEqual = left.equals(right);
166
+ }
167
+ else {
168
+ isEqual = left === right;
169
+ }
170
+ if (operator === "==") {
171
+ return isEqual;
172
+ }
173
+ if (operator === "!=") {
174
+ return !isEqual;
175
+ }
176
+ throw new EvalError(`Unknown equality operator ${operator}`);
184
177
  }
185
- if (op === ">") {
186
- return lDec.greaterThan(rDec);
178
+ if (utils_1.BINARY_OPERATOR_GROUPS.Comparison.includes(operator)) {
179
+ const leftDec = promoteToDec(left);
180
+ const rightDec = promoteToDec(right);
181
+ if (operator === "<") {
182
+ return leftDec.lessThan(rightDec);
183
+ }
184
+ if (operator === "<=") {
185
+ return leftDec.lessThanOrEqualTo(rightDec);
186
+ }
187
+ if (operator === ">") {
188
+ return leftDec.greaterThan(rightDec);
189
+ }
190
+ if (operator === ">=") {
191
+ return leftDec.greaterThanOrEqualTo(rightDec);
192
+ }
193
+ throw new EvalError(`Unknown comparison operator ${operator}`);
194
+ }
195
+ if (utils_1.BINARY_OPERATOR_GROUPS.Arithmetic.includes(operator)) {
196
+ const leftDec = promoteToDec(left);
197
+ const rightDec = promoteToDec(right);
198
+ let res;
199
+ if (operator === "+") {
200
+ res = leftDec.plus(rightDec);
201
+ }
202
+ else if (operator === "-") {
203
+ res = leftDec.minus(rightDec);
204
+ }
205
+ else if (operator === "*") {
206
+ res = leftDec.times(rightDec);
207
+ }
208
+ else if (operator === "/") {
209
+ res = leftDec.div(rightDec);
210
+ }
211
+ else if (operator === "%") {
212
+ res = leftDec.modulo(rightDec);
213
+ }
214
+ else if (operator === "**") {
215
+ res = leftDec.pow(rightDec);
216
+ }
217
+ else {
218
+ throw new EvalError(`Unknown arithmetic operator ${operator}`);
219
+ }
220
+ return demoteFromDec(res);
187
221
  }
188
- if (op === ">=") {
189
- return lDec.greaterThanOrEqualTo(rDec);
222
+ if (utils_1.BINARY_OPERATOR_GROUPS.Bitwise.includes(operator)) {
223
+ if (!(typeof left === "bigint" && typeof right === "bigint")) {
224
+ throw new EvalError(`${operator} expects integers not ${str(left)} and ${str(right)}`);
225
+ }
226
+ if (operator === "<<") {
227
+ return left << right;
228
+ }
229
+ if (operator === ">>") {
230
+ return left >> right;
231
+ }
232
+ if (operator === "|") {
233
+ return left | right;
234
+ }
235
+ if (operator === "&") {
236
+ return left & right;
237
+ }
238
+ if (operator === "^") {
239
+ return left ^ right;
240
+ }
241
+ throw new EvalError(`Unknown bitwise operator ${operator}`);
190
242
  }
191
- throw new EvalError(expr, `Unknown comparison op ${expr.operator}`);
243
+ throw new EvalError(`Unable to process ${str(left)} ${operator} ${str(right)}`);
192
244
  }
193
- function evalBinaryArithmetic(expr, lVal, rVal) {
194
- const op = expr.operator;
195
- const lDec = promoteToDec(lVal);
196
- const rDec = promoteToDec(rVal);
197
- let res;
198
- if (op === "+") {
199
- res = lDec.plus(rDec);
200
- }
201
- else if (op === "-") {
202
- res = lDec.minus(rDec);
203
- }
204
- else if (op === "*") {
205
- res = lDec.times(rDec);
206
- }
207
- else if (op === "/") {
208
- res = lDec.div(rDec);
209
- }
210
- else if (op === "%") {
211
- res = lDec.modulo(rDec);
212
- }
213
- else if (op === "**") {
214
- res = lDec.pow(rDec);
215
- }
216
- else {
217
- throw new EvalError(expr, `Unknown arithmetic op ${expr.operator}`);
245
+ exports.evalBinaryImpl = evalBinaryImpl;
246
+ function evalLiteral(node) {
247
+ try {
248
+ return evalLiteralImpl(node.kind, node.kind === ast_1.LiteralKind.HexString ? node.hexValue : node.value, node.subdenomination);
249
+ }
250
+ catch (e) {
251
+ if (e instanceof EvalError) {
252
+ e.expr = node;
253
+ }
254
+ throw e;
218
255
  }
219
- return demoteFromDec(res);
220
256
  }
221
- function evalBinaryBitwise(expr, lVal, rVal) {
222
- const op = expr.operator;
223
- if (!(typeof lVal === "bigint" && typeof rVal === "bigint")) {
224
- throw new EvalError(expr, `${op} expects integers not ${lVal} and ${rVal}`);
225
- }
226
- if (op === "<<") {
227
- return lVal << rVal;
228
- }
229
- if (op === ">>") {
230
- return lVal >> rVal;
231
- }
232
- if (op === "|") {
233
- return lVal | rVal;
234
- }
235
- if (op === "&") {
236
- return lVal & rVal;
237
- }
238
- if (op === "^") {
239
- return lVal ^ rVal;
257
+ exports.evalLiteral = evalLiteral;
258
+ function evalUnary(node) {
259
+ try {
260
+ return evalUnaryImpl(node.operator, evalConstantExpr(node.vSubExpression));
261
+ }
262
+ catch (e) {
263
+ if (e instanceof EvalError && e.expr === undefined) {
264
+ e.expr = node;
265
+ }
266
+ throw e;
240
267
  }
241
- throw new EvalError(expr, `Unknown bitwise op ${expr.operator}`);
242
268
  }
243
- function evalBinary(expr) {
244
- const lVal = evalConstantExpr(expr.vLeftExpression);
245
- const rVal = evalConstantExpr(expr.vRightExpression);
246
- if (utils_1.BINARY_OPERATOR_GROUPS.Logical.includes(expr.operator)) {
247
- return evalBinaryLogic(expr, lVal, rVal);
248
- }
249
- if (utils_1.BINARY_OPERATOR_GROUPS.Equality.includes(expr.operator)) {
250
- return evalBinaryEquality(expr, lVal, rVal);
251
- }
252
- if (utils_1.BINARY_OPERATOR_GROUPS.Comparison.includes(expr.operator)) {
253
- return evalBinaryComparison(expr, lVal, rVal);
254
- }
255
- if (utils_1.BINARY_OPERATOR_GROUPS.Arithmetic.includes(expr.operator)) {
256
- return evalBinaryArithmetic(expr, lVal, rVal);
257
- }
258
- if (utils_1.BINARY_OPERATOR_GROUPS.Bitwise.includes(expr.operator)) {
259
- return evalBinaryBitwise(expr, lVal, rVal);
269
+ exports.evalUnary = evalUnary;
270
+ function evalBinary(node) {
271
+ try {
272
+ return evalBinaryImpl(node.operator, evalConstantExpr(node.vLeftExpression), evalConstantExpr(node.vRightExpression));
273
+ }
274
+ catch (e) {
275
+ if (e instanceof EvalError && e.expr === undefined) {
276
+ e.expr = node;
277
+ }
278
+ throw e;
260
279
  }
261
- throw new EvalError(expr, `Unknown binary op ${expr.operator}`);
262
280
  }
281
+ exports.evalBinary = evalBinary;
263
282
  /**
264
283
  * Given a constant expression `expr` evaluate it to a concrete `Value`.
265
284
  * If `expr` is not constant throw `NonConstantExpressionError`.
@@ -267,44 +286,44 @@ function evalBinary(expr) {
267
286
  * TODO: The order of some operations changed in some version.
268
287
  * So perhaps to be fully precise here we will need a compiler version too?
269
288
  */
270
- function evalConstantExpr(expr) {
271
- if (!isConstant(expr)) {
272
- throw new NonConstantExpressionError(expr);
289
+ function evalConstantExpr(node) {
290
+ if (!isConstant(node)) {
291
+ throw new NonConstantExpressionError(node);
273
292
  }
274
- if (expr instanceof ast_1.Literal) {
275
- return evalLiteral(expr);
293
+ if (node instanceof ast_1.Literal) {
294
+ return evalLiteral(node);
276
295
  }
277
- if (expr instanceof ast_1.UnaryOperation) {
278
- return evalUnary(expr);
296
+ if (node instanceof ast_1.UnaryOperation) {
297
+ return evalUnary(node);
279
298
  }
280
- if (expr instanceof ast_1.BinaryOperation) {
281
- return evalBinary(expr);
299
+ if (node instanceof ast_1.BinaryOperation) {
300
+ return evalBinary(node);
282
301
  }
283
- if (expr instanceof ast_1.TupleExpression) {
284
- return evalConstantExpr(expr.vOriginalComponents[0]);
302
+ if (node instanceof ast_1.TupleExpression) {
303
+ return evalConstantExpr(node.vOriginalComponents[0]);
285
304
  }
286
- if (expr instanceof ast_1.Conditional) {
287
- return evalConstantExpr(expr.vCondition)
288
- ? evalConstantExpr(expr.vTrueExpression)
289
- : evalConstantExpr(expr.vFalseExpression);
305
+ if (node instanceof ast_1.Conditional) {
306
+ return evalConstantExpr(node.vCondition)
307
+ ? evalConstantExpr(node.vTrueExpression)
308
+ : evalConstantExpr(node.vFalseExpression);
290
309
  }
291
- if (expr instanceof ast_1.Identifier) {
292
- const decl = expr.vReferencedDeclaration;
310
+ if (node instanceof ast_1.Identifier) {
311
+ const decl = node.vReferencedDeclaration;
293
312
  if (decl instanceof ast_1.VariableDeclaration) {
294
313
  return evalConstantExpr(decl.vValue);
295
314
  }
296
315
  }
297
- if (expr instanceof ast_1.FunctionCall) {
316
+ if (node instanceof ast_1.FunctionCall) {
298
317
  /**
299
318
  * @todo Implement properly, as Solidity permits overflow and underflow
300
- * during constant evaluation.
319
+ * during constant evaluation when performing type conversions.
301
320
  */
302
- return evalConstantExpr(expr.vArguments[0]);
321
+ return evalConstantExpr(node.vArguments[0]);
303
322
  }
304
323
  /// Note that from the point of view of the type system constant conditionals and
305
324
  /// indexing in constant array literals are not considered constant expressions.
306
325
  /// So for now we don't support them, but we may change that in the future.
307
- throw new EvalError(expr, `Unable to evaluate constant expression ${(0, misc_1.pp)(expr)}`);
326
+ throw new EvalError(`Unable to evaluate constant expression ${(0, misc_1.pp)(node)}`, node);
308
327
  }
309
328
  exports.evalConstantExpr = evalConstantExpr;
310
329
  //# sourceMappingURL=eval_const.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"eval_const.js","sourceRoot":"","sources":["../../src/types/eval_const.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eval_const.js","sourceRoot":"","sources":["../../src/types/eval_const.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@ export declare const BINARY_OPERATOR_GROUPS: {
12
12
  Equality: string[];
13
13
  Logical: string[];
14
14
  };
15
- export declare function getTypeForCompilerVersion(typing: VersionDependentType, compilerVersion: string): TypeNode | undefined;
15
+ export declare function getTypeForCompilerVersion(typing: TypeNode | VersionDependentType, compilerVersion: string): TypeNode | undefined;
16
16
  /**
17
17
  * Given 2 function pointer's visibilities infer a common visibility thats compatible with both.
18
18
  * This is used to infer the visibility of the expression `flag ? fun1 : fun2` where fun1 and fun2 are
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/types/utils.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,YAAY,CAAC;AAEjC,OAAO,EACH,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,eAAe,EACf,eAAe,EACf,UAAU,EAEV,YAAY,EAEZ,kBAAkB,EAGlB,kBAAkB,EAClB,kBAAkB,EAElB,UAAU,EAGV,mBAAmB,EACtB,MAAM,QAAQ,CAAC;AAGhB,OAAO,EAAE,iBAAiB,EAAsB,MAAM,OAAO,CAAC;AAC9D,OAAO,EAGH,mBAAmB,EAInB,eAAe,EACf,YAAY,EAEZ,OAAO,EAIP,QAAQ,EAKR,QAAQ,EAER,cAAc,EACjB,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAElD,eAAO,MAAM,2BAA2B,sBAYtC,CAAC;AAEH,eAAO,MAAM,aAAa,UAAyE,CAAC;AAEpG,eAAO,MAAM,sBAAsB;;;;;;CAMlC,CAAC;AAEF,wBAAgB,yBAAyB,CACrC,MAAM,EAAE,oBAAoB,EAC5B,eAAe,EAAE,MAAM,GACxB,QAAQ,GAAG,SAAS,CAItB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAChC,CAAC,EAAE,kBAAkB,EACrB,CAAC,EAAE,kBAAkB,GACtB,kBAAkB,GAAG,SAAS,CAsBhC;AAED;;;GAGG;AACH,wBAAgB,aAAa,CACzB,CAAC,EAAE,YAAY,GAAG,mBAAmB,GAAG,eAAe,EACvD,CAAC,EAAE,YAAY,GAAG,mBAAmB,GAAG,eAAe,GACxD,eAAe,CAgBjB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,UAAU,GAAG,UAAU,CAU9D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,YAAY,GAAG,QAAQ,CA4C1E;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,GAAG,CAAC,QAAQ,EAAE,YAAY,GAAG,SAAS,CAAC,CA6BnF;AAED,oBAAY,eAAe,GACrB,cAAc,GACd,kBAAkB,GAClB,eAAe,GACf,eAAe,GACf,mBAAmB,GACnB,kBAAkB,CAAC;AAEzB,wBAAgB,YAAY,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,CAEzD;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAO3D;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAoB3D;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAChC,KAAK,EAAE,UAAU,EAAE,EACnB,eAAe,EAAE,MAAM,GACxB,iBAAiB,CAwCnB;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAiBlE;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,kBAAkB,EAAE,CAYtF;AAED,wBAAgB,6BAA6B,CAAC,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAE5E;AAWD;;GAEG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CA6IzF;AAgBD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,GAAG,SAAS,CAuB9E;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,OAAO,GAAG,QAAQ,CActD"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/types/utils.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,YAAY,CAAC;AAEjC,OAAO,EACH,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,eAAe,EACf,eAAe,EACf,UAAU,EAEV,YAAY,EAEZ,kBAAkB,EAGlB,kBAAkB,EAClB,kBAAkB,EAElB,UAAU,EAGV,mBAAmB,EACtB,MAAM,QAAQ,CAAC;AAGhB,OAAO,EAAE,iBAAiB,EAAsB,MAAM,OAAO,CAAC;AAC9D,OAAO,EAGH,mBAAmB,EAInB,eAAe,EACf,YAAY,EAEZ,OAAO,EAIP,QAAQ,EAKR,QAAQ,EAER,cAAc,EACjB,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAElD,eAAO,MAAM,2BAA2B,sBAYtC,CAAC;AAEH,eAAO,MAAM,aAAa,UAAyE,CAAC;AAEpG,eAAO,MAAM,sBAAsB;;;;;;CAMlC,CAAC;AAEF,wBAAgB,yBAAyB,CACrC,MAAM,EAAE,QAAQ,GAAG,oBAAoB,EACvC,eAAe,EAAE,MAAM,GACxB,QAAQ,GAAG,SAAS,CAQtB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAChC,CAAC,EAAE,kBAAkB,EACrB,CAAC,EAAE,kBAAkB,GACtB,kBAAkB,GAAG,SAAS,CAsBhC;AAED;;;GAGG;AACH,wBAAgB,aAAa,CACzB,CAAC,EAAE,YAAY,GAAG,mBAAmB,GAAG,eAAe,EACvD,CAAC,EAAE,YAAY,GAAG,mBAAmB,GAAG,eAAe,GACxD,eAAe,CAgBjB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,UAAU,GAAG,UAAU,CAU9D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,YAAY,GAAG,QAAQ,CA4C1E;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,GAAG,CAAC,QAAQ,EAAE,YAAY,GAAG,SAAS,CAAC,CA6BnF;AAED,oBAAY,eAAe,GACrB,cAAc,GACd,kBAAkB,GAClB,eAAe,GACf,eAAe,GACf,mBAAmB,GACnB,kBAAkB,CAAC;AAEzB,wBAAgB,YAAY,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,CAEzD;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAO3D;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAoB3D;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAChC,KAAK,EAAE,UAAU,EAAE,EACnB,eAAe,EAAE,MAAM,GACxB,iBAAiB,CAwCnB;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAiBlE;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,kBAAkB,EAAE,CAYtF;AAED,wBAAgB,6BAA6B,CAAC,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAE5E;AAWD;;GAEG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CA6IzF;AAgBD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,GAAG,SAAS,CAuB9E;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,OAAO,GAAG,QAAQ,CActD"}
@@ -33,6 +33,9 @@ exports.BINARY_OPERATOR_GROUPS = {
33
33
  Logical: ["&&", "||"]
34
34
  };
35
35
  function getTypeForCompilerVersion(typing, compilerVersion) {
36
+ if (typing instanceof ast_2.TypeNode) {
37
+ return typing;
38
+ }
36
39
  const [type, version] = typing;
37
40
  return (0, semver_1.satisfies)(compilerVersion, version) ? type : undefined;
38
41
  }
@@ -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": "11.0.0",
3
+ "version": "11.0.1",
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": [