sol-dbg 0.7.17 → 0.8.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/dist/debug/abi.d.ts +10 -3
- package/dist/debug/abi.d.ts.map +1 -1
- package/dist/debug/abi.js +5 -4
- package/dist/debug/abi.js.map +1 -1
- package/dist/debug/decoding/calldata/view.d.ts +15 -16
- package/dist/debug/decoding/calldata/view.d.ts.map +1 -1
- package/dist/debug/decoding/calldata/view.js +47 -47
- package/dist/debug/decoding/calldata/view.js.map +1 -1
- package/dist/debug/decoding/index.d.ts +1 -2
- package/dist/debug/decoding/index.d.ts.map +1 -1
- package/dist/debug/decoding/index.js +2 -2
- package/dist/debug/decoding/index.js.map +1 -1
- package/dist/debug/decoding/memory/view.d.ts +14 -15
- package/dist/debug/decoding/memory/view.d.ts.map +1 -1
- package/dist/debug/decoding/memory/view.js +27 -27
- package/dist/debug/decoding/memory/view.js.map +1 -1
- package/dist/debug/decoding/stack/view.d.ts +4 -4
- package/dist/debug/decoding/stack/view.d.ts.map +1 -1
- package/dist/debug/decoding/stack/view.js +20 -19
- package/dist/debug/decoding/stack/view.js.map +1 -1
- package/dist/debug/decoding/storage/view.d.ts +18 -19
- package/dist/debug/decoding/storage/view.d.ts.map +1 -1
- package/dist/debug/decoding/storage/view.js +67 -65
- package/dist/debug/decoding/storage/view.js.map +1 -1
- package/dist/debug/decoding/utils.d.ts +20 -2
- package/dist/debug/decoding/utils.d.ts.map +1 -1
- package/dist/debug/decoding/utils.js +119 -3
- package/dist/debug/decoding/utils.js.map +1 -1
- package/dist/debug/decoding/view.d.ts +2 -2
- package/dist/debug/decoding/view.d.ts.map +1 -1
- package/dist/debug/index.d.ts +1 -0
- package/dist/debug/index.d.ts.map +1 -1
- package/dist/debug/index.js +1 -0
- package/dist/debug/index.js.map +1 -1
- package/dist/debug/layout.d.ts.map +1 -1
- package/dist/debug/layout.js +2 -1
- package/dist/debug/layout.js.map +1 -1
- package/dist/debug/runtime_types/ast/address_type.d.ts +5 -0
- package/dist/debug/runtime_types/ast/address_type.d.ts.map +1 -0
- package/dist/debug/runtime_types/ast/address_type.js +11 -0
- package/dist/debug/runtime_types/ast/address_type.js.map +1 -0
- package/dist/debug/runtime_types/ast/array_type.d.ts +8 -0
- package/dist/debug/runtime_types/ast/array_type.d.ts.map +1 -0
- package/dist/debug/runtime_types/ast/array_type.js +16 -0
- package/dist/debug/runtime_types/ast/array_type.js.map +1 -0
- package/dist/debug/runtime_types/ast/base_type.d.ts +16 -0
- package/dist/debug/runtime_types/ast/base_type.d.ts.map +1 -0
- package/dist/debug/runtime_types/ast/base_type.js +19 -0
- package/dist/debug/runtime_types/ast/base_type.js.map +1 -0
- package/dist/debug/runtime_types/ast/bool_type.d.ts +5 -0
- package/dist/debug/runtime_types/ast/bool_type.d.ts.map +1 -0
- package/dist/debug/runtime_types/ast/bool_type.js +11 -0
- package/dist/debug/runtime_types/ast/bool_type.js.map +1 -0
- package/dist/debug/runtime_types/ast/bytes_type.d.ts +5 -0
- package/dist/debug/runtime_types/ast/bytes_type.d.ts.map +1 -0
- package/dist/debug/runtime_types/ast/bytes_type.js +11 -0
- package/dist/debug/runtime_types/ast/bytes_type.js.map +1 -0
- package/dist/debug/runtime_types/ast/fixed_bytes_type.d.ts +7 -0
- package/dist/debug/runtime_types/ast/fixed_bytes_type.d.ts.map +1 -0
- package/dist/debug/runtime_types/ast/fixed_bytes_type.js +15 -0
- package/dist/debug/runtime_types/ast/fixed_bytes_type.js.map +1 -0
- package/dist/debug/runtime_types/ast/function_type.d.ts +11 -0
- package/dist/debug/runtime_types/ast/function_type.d.ts.map +1 -0
- package/dist/debug/runtime_types/ast/function_type.js +22 -0
- package/dist/debug/runtime_types/ast/function_type.js.map +1 -0
- package/dist/debug/runtime_types/ast/index.d.ts +16 -0
- package/dist/debug/runtime_types/ast/index.d.ts.map +1 -0
- package/dist/debug/runtime_types/ast/index.js +32 -0
- package/dist/debug/runtime_types/ast/index.js.map +1 -0
- package/dist/debug/runtime_types/ast/int_type.d.ts +10 -0
- package/dist/debug/runtime_types/ast/int_type.d.ts.map +1 -0
- package/dist/debug/runtime_types/ast/int_type.js +24 -0
- package/dist/debug/runtime_types/ast/int_type.js.map +1 -0
- package/dist/debug/runtime_types/ast/mapping_type.d.ts +8 -0
- package/dist/debug/runtime_types/ast/mapping_type.d.ts.map +1 -0
- package/dist/debug/runtime_types/ast/mapping_type.js +16 -0
- package/dist/debug/runtime_types/ast/mapping_type.js.map +1 -0
- package/dist/debug/runtime_types/ast/missing_type.d.ts +11 -0
- package/dist/debug/runtime_types/ast/missing_type.d.ts.map +1 -0
- package/dist/debug/runtime_types/ast/missing_type.js +19 -0
- package/dist/debug/runtime_types/ast/missing_type.js.map +1 -0
- package/dist/debug/runtime_types/ast/pointer_type.d.ts +9 -0
- package/dist/debug/runtime_types/ast/pointer_type.d.ts.map +1 -0
- package/dist/debug/runtime_types/ast/pointer_type.js +51 -0
- package/dist/debug/runtime_types/ast/pointer_type.js.map +1 -0
- package/dist/debug/runtime_types/ast/string_type.d.ts +5 -0
- package/dist/debug/runtime_types/ast/string_type.d.ts.map +1 -0
- package/dist/debug/runtime_types/ast/string_type.js +11 -0
- package/dist/debug/runtime_types/ast/string_type.js.map +1 -0
- package/dist/debug/runtime_types/ast/struct_type.d.ts +8 -0
- package/dist/debug/runtime_types/ast/struct_type.d.ts.map +1 -0
- package/dist/debug/runtime_types/ast/struct_type.js +16 -0
- package/dist/debug/runtime_types/ast/struct_type.js.map +1 -0
- package/dist/debug/runtime_types/ast/tuple_type.d.ts +7 -0
- package/dist/debug/runtime_types/ast/tuple_type.d.ts.map +1 -0
- package/dist/debug/runtime_types/ast/tuple_type.js +15 -0
- package/dist/debug/runtime_types/ast/tuple_type.js.map +1 -0
- package/dist/debug/runtime_types/ast/type_type.d.ts +12 -0
- package/dist/debug/runtime_types/ast/type_type.d.ts.map +1 -0
- package/dist/debug/runtime_types/ast/type_type.js +19 -0
- package/dist/debug/runtime_types/ast/type_type.js.map +1 -0
- package/dist/debug/runtime_types/index.d.ts +3 -0
- package/dist/debug/runtime_types/index.d.ts.map +1 -0
- package/dist/debug/runtime_types/index.js +19 -0
- package/dist/debug/runtime_types/index.js.map +1 -0
- package/dist/debug/runtime_types/utils.d.ts +32 -0
- package/dist/debug/runtime_types/utils.d.ts.map +1 -0
- package/dist/debug/runtime_types/utils.js +213 -0
- package/dist/debug/runtime_types/utils.js.map +1 -0
- package/dist/debug/tracers/transformers/int_stack.d.ts.map +1 -1
- package/dist/debug/tracers/transformers/int_stack.js +4 -2
- package/dist/debug/tracers/transformers/int_stack.js.map +1 -1
- package/dist/debug/tracers/transformers/ret_info.js +2 -2
- package/dist/debug/tracers/transformers/ret_info.js.map +1 -1
- package/dist/utils/misc.d.ts +3 -1
- package/dist/utils/misc.d.ts.map +1 -1
- package/dist/utils/misc.js +11 -9
- package/dist/utils/misc.js.map +1 -1
- package/dist/utils/pp.d.ts.map +1 -1
- package/dist/utils/pp.js +13 -12
- package/dist/utils/pp.js.map +1 -1
- package/dist/utils/solidity.d.ts +1 -0
- package/dist/utils/solidity.d.ts.map +1 -1
- package/dist/utils/solidity.js +8 -0
- package/dist/utils/solidity.js.map +1 -1
- package/package.json +1 -1
- package/dist/debug/decoding/exp_types.d.ts +0 -46
- package/dist/debug/decoding/exp_types.d.ts.map +0 -1
- package/dist/debug/decoding/exp_types.js +0 -202
- package/dist/debug/decoding/exp_types.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../../src/debug/decoding/storage/view.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../../src/debug/decoding/storage/view.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,11 +10,11 @@ const view_1 = require("../view");
|
|
|
10
10
|
const utils_1 = require("../../../utils");
|
|
11
11
|
const keccak_1 = require("ethereum-cryptography/keccak");
|
|
12
12
|
const util_1 = require("@ethereumjs/util");
|
|
13
|
-
const exp_types_1 = require("../exp_types");
|
|
14
13
|
const memory_1 = require("../memory");
|
|
15
14
|
const utils_2 = require("../utils");
|
|
16
15
|
const view_2 = require("../memory/view");
|
|
17
16
|
const utils_3 = require("ethereum-cryptography/utils");
|
|
17
|
+
const runtime_types_1 = require("../../runtime_types");
|
|
18
18
|
function isArrayLikeStorageView(v) {
|
|
19
19
|
return (v instanceof FixedBytesStorageView ||
|
|
20
20
|
v instanceof ArrayStorageView ||
|
|
@@ -72,17 +72,17 @@ class BaseStorageView extends view_1.View {
|
|
|
72
72
|
* Helper to decode an int type at a given location in storage.
|
|
73
73
|
*/
|
|
74
74
|
decodeIntAt(key, endOffsetInWord, type, state) {
|
|
75
|
-
const size = type.
|
|
75
|
+
const size = type.numBits / 8;
|
|
76
76
|
if (endOffsetInWord < size) {
|
|
77
77
|
return new value_1.DecodingFailure(`Internal Error: Can't decode ${type.pp()} starting at offset ${endOffsetInWord} in word ${key}`);
|
|
78
78
|
}
|
|
79
79
|
const rawBytes = this.fetchBytes(key, endOffsetInWord - size, size, state);
|
|
80
80
|
let res = (0, utils_1.bigEndianBufToBigint)(rawBytes);
|
|
81
81
|
// Convert signed negative 2's complement values
|
|
82
|
-
if (type.signed && (res & (BigInt(1) << BigInt(type.
|
|
82
|
+
if (type.signed && (res & (BigInt(1) << BigInt(type.numBits - 1))) !== BigInt(0)) {
|
|
83
83
|
// Mask out any 1's above the number's size
|
|
84
|
-
res = res & ((BigInt(1) << BigInt(type.
|
|
85
|
-
res = -((BigInt(1) << BigInt(type.
|
|
84
|
+
res = res & ((BigInt(1) << BigInt(type.numBits)) - BigInt(1));
|
|
85
|
+
res = -((BigInt(1) << BigInt(type.numBits)) - res);
|
|
86
86
|
}
|
|
87
87
|
if (!(0, utils_1.fits)(res, type)) {
|
|
88
88
|
return new value_1.DecodingFailure(`Decoded value ${res} from ${[key, endOffsetInWord]} doesn't fit in expected typee ${type.pp()}`);
|
|
@@ -90,7 +90,7 @@ class BaseStorageView extends view_1.View {
|
|
|
90
90
|
return res;
|
|
91
91
|
}
|
|
92
92
|
encodeIntAt(val, key, endOffsetInWord, type, state) {
|
|
93
|
-
const size = type.
|
|
93
|
+
const size = type.numBits / 8;
|
|
94
94
|
if (endOffsetInWord < size) {
|
|
95
95
|
throw new view_1.EncodingError(`Internal Error: Can't decode ${type.pp()} starting at offset ${endOffsetInWord} in word ${key}`);
|
|
96
96
|
}
|
|
@@ -98,7 +98,7 @@ class BaseStorageView extends view_1.View {
|
|
|
98
98
|
throw new view_1.EncodingError(`Decoded value ${val} from ${[key, endOffsetInWord]} doesn't fit in expected typee ${type.pp()}`);
|
|
99
99
|
}
|
|
100
100
|
const word = this.fetchWord(key, state);
|
|
101
|
-
(0, utils_1.encodeBigintInBigEndianBuf)(val, word, type.
|
|
101
|
+
(0, utils_1.encodeBigintInBigEndianBuf)(val, word, type.numBits / 8, endOffsetInWord);
|
|
102
102
|
return this.setWord(key, word, state);
|
|
103
103
|
}
|
|
104
104
|
pp() {
|
|
@@ -111,7 +111,7 @@ class IntStorageView extends BaseStorageView {
|
|
|
111
111
|
return this.decodeIntAt(this.key, this.endOffsetInWord, this.type, state);
|
|
112
112
|
}
|
|
113
113
|
nextLoc() {
|
|
114
|
-
return move(this.loc, this.type.
|
|
114
|
+
return move(this.loc, this.type.numBits / 8);
|
|
115
115
|
}
|
|
116
116
|
encode(value, state) {
|
|
117
117
|
return this.encodeIntAt(value, this.key, this.endOffsetInWord, this.type, state);
|
|
@@ -160,13 +160,13 @@ exports.AddressStorageView = AddressStorageView;
|
|
|
160
160
|
*/
|
|
161
161
|
class SingleByteStorageView extends BaseStorageView {
|
|
162
162
|
constructor(loc) {
|
|
163
|
-
super(
|
|
163
|
+
super(utils_1.byte, loc);
|
|
164
164
|
}
|
|
165
165
|
decode(state) {
|
|
166
|
-
if (this.endOffsetInWord < this.type.
|
|
166
|
+
if (this.endOffsetInWord < this.type.numBytes) {
|
|
167
167
|
return new value_1.DecodingFailure(`Unalighed Read: Can't decode ${this.type.pp()} starting at offset ${this.endOffsetInWord} in word ${this.key}`);
|
|
168
168
|
}
|
|
169
|
-
const byte = this.fetchBytes(this.key, this.endOffsetInWord - this.type.
|
|
169
|
+
const byte = this.fetchBytes(this.key, this.endOffsetInWord - this.type.numBytes, this.type.numBytes, state);
|
|
170
170
|
return BigInt(byte[0]);
|
|
171
171
|
}
|
|
172
172
|
encode(value, state) {
|
|
@@ -174,50 +174,50 @@ class SingleByteStorageView extends BaseStorageView {
|
|
|
174
174
|
if (!(0, utils_2.inRange)(value, 0, 255)) {
|
|
175
175
|
throw new view_1.EncodingError(`${value} not in byte range [0, 255]`);
|
|
176
176
|
}
|
|
177
|
-
word[this.endOffsetInWord - this.type.
|
|
177
|
+
word[this.endOffsetInWord - this.type.numBytes] = Number(value);
|
|
178
178
|
return this.setWord(this.key, word, state);
|
|
179
179
|
}
|
|
180
180
|
nextLoc() {
|
|
181
|
-
return move(this.loc, this.type.
|
|
181
|
+
return move(this.loc, this.type.numBytes);
|
|
182
182
|
}
|
|
183
183
|
}
|
|
184
184
|
exports.SingleByteStorageView = SingleByteStorageView;
|
|
185
185
|
class FixedBytesStorageView extends BaseStorageView {
|
|
186
186
|
decode(state) {
|
|
187
|
-
if (this.endOffsetInWord < this.type.
|
|
187
|
+
if (this.endOffsetInWord < this.type.numBytes) {
|
|
188
188
|
return new value_1.DecodingFailure(`Unalighed Read: Can't decode ${this.type.pp()} starting at offset ${this.endOffsetInWord} in word ${this.key}`);
|
|
189
189
|
}
|
|
190
|
-
return this.fetchBytes(this.key, this.endOffsetInWord - this.type.
|
|
190
|
+
return this.fetchBytes(this.key, this.endOffsetInWord - this.type.numBytes, this.type.numBytes, state);
|
|
191
191
|
}
|
|
192
192
|
encode(value, state) {
|
|
193
|
-
if (this.endOffsetInWord < this.type.
|
|
193
|
+
if (this.endOffsetInWord < this.type.numBytes) {
|
|
194
194
|
throw new view_1.EncodingError(`Unalighed read: Can't decode ${this.type.pp()} starting at offset ${this.endOffsetInWord} in word ${this.key}`);
|
|
195
195
|
}
|
|
196
196
|
const word = this.fetchWord(this.key, state);
|
|
197
|
-
word.set(value, this.endOffsetInWord - this.type.
|
|
197
|
+
word.set(value, this.endOffsetInWord - this.type.numBytes);
|
|
198
198
|
return this.setWord(this.key, word, state);
|
|
199
199
|
}
|
|
200
200
|
indexView(key) {
|
|
201
|
-
if (!(0, utils_2.inRange)(key, 0, this.type.
|
|
201
|
+
if (!(0, utils_2.inRange)(key, 0, this.type.numBytes)) {
|
|
202
202
|
return new value_1.DecodingFailure(`Invalid index ${key} in ${this.type.pp()}`);
|
|
203
203
|
}
|
|
204
204
|
return new SingleByteStorageView([
|
|
205
205
|
this.key,
|
|
206
|
-
this.endOffsetInWord - this.type.
|
|
206
|
+
this.endOffsetInWord - this.type.numBytes + Number(key) + 1
|
|
207
207
|
]);
|
|
208
208
|
}
|
|
209
209
|
nextLoc() {
|
|
210
|
-
return move(this.loc, this.type.
|
|
210
|
+
return move(this.loc, this.type.numBytes);
|
|
211
211
|
}
|
|
212
212
|
size() {
|
|
213
|
-
return BigInt(this.type.
|
|
213
|
+
return BigInt(this.type.numBytes);
|
|
214
214
|
}
|
|
215
215
|
}
|
|
216
216
|
exports.FixedBytesStorageView = FixedBytesStorageView;
|
|
217
217
|
class PointerStorageView extends BaseStorageView {
|
|
218
218
|
constructor(type, loc) {
|
|
219
219
|
super(type, loc);
|
|
220
|
-
this.innerView = makeStorageView(type.
|
|
220
|
+
this.innerView = makeStorageView(type.toType, loc);
|
|
221
221
|
}
|
|
222
222
|
decode(state, mapKeys) {
|
|
223
223
|
return this.innerView.decode(state, mapKeys);
|
|
@@ -388,7 +388,7 @@ class StructStorageView extends BaseStorageView {
|
|
|
388
388
|
let fieldLoc = this.loc;
|
|
389
389
|
for (const [name, fieldT] of this.type.fields) {
|
|
390
390
|
const fieldView = fieldLoc === undefined
|
|
391
|
-
? new MissingStorageView(new
|
|
391
|
+
? new MissingStorageView(new runtime_types_1.MissingType(undefined), [-1n, 32])
|
|
392
392
|
: makeStorageView(fieldT, fieldLoc);
|
|
393
393
|
this.fieldViews.push([name, fieldView]);
|
|
394
394
|
fieldLoc = fieldView.nextLoc();
|
|
@@ -427,17 +427,19 @@ class StructStorageView extends BaseStorageView {
|
|
|
427
427
|
}
|
|
428
428
|
exports.StructStorageView = StructStorageView;
|
|
429
429
|
function decodeMapRefKey(type, data) {
|
|
430
|
-
if (!(type instanceof
|
|
430
|
+
if (!(type instanceof runtime_types_1.StringType || type instanceof runtime_types_1.BytesType)) {
|
|
431
431
|
throw new Error(`Invalid map reference key type ${type.pp()}`);
|
|
432
432
|
}
|
|
433
|
-
return type instanceof
|
|
433
|
+
return type instanceof runtime_types_1.StringType ? (0, util_1.bytesToUtf8)(data) : (0, utils_3.bytesToHex)(data);
|
|
434
434
|
}
|
|
435
435
|
function encodeMapKey(keyT, value) {
|
|
436
|
-
if (keyT instanceof
|
|
437
|
-
if (!(keyT.
|
|
436
|
+
if (keyT instanceof runtime_types_1.PointerType) {
|
|
437
|
+
if (!(keyT.toType instanceof runtime_types_1.StringType || keyT.toType instanceof runtime_types_1.BytesType)) {
|
|
438
438
|
throw new Error(`Invalid map reference key type ${keyT.pp()}`);
|
|
439
439
|
}
|
|
440
|
-
return keyT.
|
|
440
|
+
return keyT.toType instanceof runtime_types_1.StringType
|
|
441
|
+
? (0, utils_3.utf8ToBytes)(value)
|
|
442
|
+
: value;
|
|
441
443
|
}
|
|
442
444
|
const buf = new Uint8Array(32);
|
|
443
445
|
const keyV = (0, memory_1.makeMemoryView)(keyT, 0n);
|
|
@@ -461,7 +463,7 @@ class MapStorageView extends BaseStorageView {
|
|
|
461
463
|
return res;
|
|
462
464
|
}
|
|
463
465
|
let keyView;
|
|
464
|
-
if (!(this.type.keyType instanceof
|
|
466
|
+
if (!(this.type.keyType instanceof runtime_types_1.PointerType)) {
|
|
465
467
|
keyView = (0, memory_1.makeMemoryView)(this.type.keyType, 0n);
|
|
466
468
|
}
|
|
467
469
|
// @todo(dimo) Would it be better here to check that `candidateSlot` is an explicitly defined in storage, and not just a 0 by default?
|
|
@@ -471,7 +473,7 @@ class MapStorageView extends BaseStorageView {
|
|
|
471
473
|
decodedKey = keyView.decode(candidateKey);
|
|
472
474
|
}
|
|
473
475
|
else {
|
|
474
|
-
decodedKey = decodeMapRefKey(this.type.keyType.
|
|
476
|
+
decodedKey = decodeMapRefKey(this.type.keyType.toType, candidateKey);
|
|
475
477
|
}
|
|
476
478
|
const valueView = makeStorageView(this.type.valueType, [candidateSlot, 32]);
|
|
477
479
|
const decodedValue = valueView.decode(state, mapKeys);
|
|
@@ -619,24 +621,24 @@ exports.StringStorageView = StringStorageView;
|
|
|
619
621
|
class MissingStorageView extends BaseStorageView {
|
|
620
622
|
constructor(type, loc) {
|
|
621
623
|
super(type, loc);
|
|
622
|
-
if (this.type.
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
(0, solc_typed_ast_1.assert)(this.endOffsetInWord === 32, `Unexpected non-word aligned {0} in storage`, typeString);
|
|
624
|
+
if (this.type.typeString !== undefined) {
|
|
625
|
+
if ((0, utils_2.isTypeStringStatic32BytesInStorage)(this.type.typeString)) {
|
|
626
|
+
(0, solc_typed_ast_1.assert)(this.endOffsetInWord === 32, `Unexpected non-word aligned {0} in storage`, this.type.typeString);
|
|
626
627
|
}
|
|
627
628
|
}
|
|
628
629
|
}
|
|
629
630
|
decode() {
|
|
630
|
-
|
|
631
|
+
const typeStr = this.type.typeString;
|
|
632
|
+
return new value_1.DecodingFailure(`missing ${typeStr ? typeStr : "<unknown>"}`);
|
|
631
633
|
}
|
|
632
634
|
encode() {
|
|
633
635
|
throw new view_1.EncodingError(`Cannot encode a missing value`);
|
|
634
636
|
}
|
|
635
637
|
nextLoc() {
|
|
636
|
-
if (this.type.
|
|
638
|
+
if (this.type.typeString === undefined) {
|
|
637
639
|
return undefined;
|
|
638
640
|
}
|
|
639
|
-
const typeString = this.type.
|
|
641
|
+
const typeString = this.type.typeString;
|
|
640
642
|
// If we can guess this is a dynamic array or mapping from the typestring, then we know the nextLoc
|
|
641
643
|
if ((0, utils_2.isTypeStringStatic32BytesInStorage)(typeString)) {
|
|
642
644
|
return nextWord(this.loc);
|
|
@@ -665,10 +667,10 @@ function nextWord(loc) {
|
|
|
665
667
|
return [loc[0] + 1n, 32];
|
|
666
668
|
}
|
|
667
669
|
function typeStartsInNewWord(t) {
|
|
668
|
-
if (t instanceof
|
|
669
|
-
return typeStartsInNewWord(t.
|
|
670
|
+
if (t instanceof runtime_types_1.PointerType) {
|
|
671
|
+
return typeStartsInNewWord(t.toType);
|
|
670
672
|
}
|
|
671
|
-
return t instanceof
|
|
673
|
+
return t instanceof runtime_types_1.ArrayType || t instanceof runtime_types_1.MappingType || t instanceof runtime_types_1.StructType;
|
|
672
674
|
}
|
|
673
675
|
/**
|
|
674
676
|
* Compute the 'static' size that a variable of primitive type `typ` would take
|
|
@@ -677,35 +679,35 @@ function typeStartsInNewWord(t) {
|
|
|
677
679
|
* starts in own word too).
|
|
678
680
|
*/
|
|
679
681
|
function staticSize(typ) {
|
|
680
|
-
if (typ instanceof
|
|
681
|
-
return typ.
|
|
682
|
+
if (typ instanceof runtime_types_1.IntType) {
|
|
683
|
+
return typ.numBits / 8;
|
|
682
684
|
}
|
|
683
|
-
if (typ instanceof
|
|
684
|
-
return typ.
|
|
685
|
+
if (typ instanceof runtime_types_1.FixedBytesType) {
|
|
686
|
+
return typ.numBytes;
|
|
685
687
|
}
|
|
686
|
-
if (typ instanceof
|
|
688
|
+
if (typ instanceof runtime_types_1.BoolType) {
|
|
687
689
|
return 1;
|
|
688
690
|
}
|
|
689
|
-
if (typ instanceof
|
|
691
|
+
if (typ instanceof runtime_types_1.AddressType) {
|
|
690
692
|
return 20;
|
|
691
693
|
}
|
|
692
|
-
if (typ instanceof
|
|
694
|
+
if (typ instanceof runtime_types_1.BytesType || typ instanceof runtime_types_1.StringType) {
|
|
693
695
|
return 32;
|
|
694
696
|
}
|
|
695
|
-
if (typ instanceof
|
|
696
|
-
return staticSize(typ.
|
|
697
|
+
if (typ instanceof runtime_types_1.PointerType) {
|
|
698
|
+
return staticSize(typ.toType);
|
|
697
699
|
}
|
|
698
|
-
if (typ instanceof
|
|
699
|
-
typ.
|
|
700
|
-
(0, utils_2.isTypeStringStatic32BytesInStorage)(typ.
|
|
700
|
+
if (typ instanceof runtime_types_1.MissingType &&
|
|
701
|
+
typ.typeString !== undefined &&
|
|
702
|
+
(0, utils_2.isTypeStringStatic32BytesInStorage)(typ.typeString)) {
|
|
701
703
|
return 32;
|
|
702
704
|
}
|
|
703
705
|
(0, utils_1.nyi)(`NYI staticSize(${typ.pp()})`);
|
|
704
706
|
}
|
|
705
707
|
function makeStorageView(type, loc) {
|
|
706
|
-
if (type instanceof
|
|
707
|
-
if (type.
|
|
708
|
-
if ((0, utils_2.isTypeStringStatic32BytesInStorage)(type.
|
|
708
|
+
if (type instanceof runtime_types_1.MissingType) {
|
|
709
|
+
if (type.typeString !== undefined) {
|
|
710
|
+
if ((0, utils_2.isTypeStringStatic32BytesInStorage)(type.typeString)) {
|
|
709
711
|
loc = loc[1] === 32 ? loc : nextWord(loc);
|
|
710
712
|
}
|
|
711
713
|
}
|
|
@@ -714,34 +716,34 @@ function makeStorageView(type, loc) {
|
|
|
714
716
|
if (!typeFitsInLoc(type, loc)) {
|
|
715
717
|
loc = nextWord(loc);
|
|
716
718
|
}
|
|
717
|
-
if (type instanceof
|
|
719
|
+
if (type instanceof runtime_types_1.IntType) {
|
|
718
720
|
return new IntStorageView(type, loc);
|
|
719
721
|
}
|
|
720
|
-
if (type instanceof
|
|
722
|
+
if (type instanceof runtime_types_1.BoolType) {
|
|
721
723
|
return new BoolStorageView(utils_1.bool, loc);
|
|
722
724
|
}
|
|
723
|
-
if (type instanceof
|
|
725
|
+
if (type instanceof runtime_types_1.AddressType) {
|
|
724
726
|
return new AddressStorageView(utils_1.address, loc);
|
|
725
727
|
}
|
|
726
|
-
if (type instanceof
|
|
728
|
+
if (type instanceof runtime_types_1.FixedBytesType) {
|
|
727
729
|
return new FixedBytesStorageView(type, loc);
|
|
728
730
|
}
|
|
729
|
-
if (type instanceof
|
|
731
|
+
if (type instanceof runtime_types_1.BytesType) {
|
|
730
732
|
return new BytesStorageView(type, loc);
|
|
731
733
|
}
|
|
732
|
-
if (type instanceof
|
|
734
|
+
if (type instanceof runtime_types_1.StringType) {
|
|
733
735
|
return new StringStorageView(type, loc);
|
|
734
736
|
}
|
|
735
|
-
if (type instanceof
|
|
737
|
+
if (type instanceof runtime_types_1.ArrayType) {
|
|
736
738
|
return new ArrayStorageView(type, loc);
|
|
737
739
|
}
|
|
738
|
-
if (type instanceof
|
|
740
|
+
if (type instanceof runtime_types_1.PointerType) {
|
|
739
741
|
return new PointerStorageView(type, loc);
|
|
740
742
|
}
|
|
741
|
-
if (type instanceof
|
|
743
|
+
if (type instanceof runtime_types_1.StructType) {
|
|
742
744
|
return new StructStorageView(type, loc);
|
|
743
745
|
}
|
|
744
|
-
if (type instanceof
|
|
746
|
+
if (type instanceof runtime_types_1.MappingType) {
|
|
745
747
|
return new MapStorageView(type, loc);
|
|
746
748
|
}
|
|
747
749
|
(0, utils_1.nyi)(`makeStoragView(${type.pp()})`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view.js","sourceRoot":"","sources":["../../../../src/debug/decoding/storage/view.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"view.js","sourceRoot":"","sources":["../../../../src/debug/decoding/storage/view.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
import { TypeNode } from "solc-typed-ast";
|
|
2
1
|
import { DecodingFailure, Value } from "./value";
|
|
3
2
|
import { PointerView, View } from "./view";
|
|
4
|
-
|
|
3
|
+
import { BaseRuntimeType } from "../runtime_types";
|
|
4
|
+
import * as sol from "solc-typed-ast";
|
|
5
|
+
import * as rtt from "../runtime_types/ast";
|
|
6
|
+
export declare function isCalldataArrayType(typ: BaseRuntimeType): boolean;
|
|
5
7
|
/**
|
|
6
8
|
* Returns true IFF the n >= min && n <= max
|
|
7
9
|
*
|
|
@@ -16,4 +18,20 @@ export declare function isTypeStringMapping(t: string): boolean;
|
|
|
16
18
|
export declare function isTypeStringStruct(t: string): boolean;
|
|
17
19
|
export declare function isTypeStringStatic32BytesInStorage(t: string): boolean;
|
|
18
20
|
export declare function isPointerView(v: any): v is PointerView<any, View>;
|
|
21
|
+
/**
|
|
22
|
+
* Given a `ContractDefinition` try and compute an `ExpStructType` struct that
|
|
23
|
+
* describes the layout of the class. This takes into account all base classes,
|
|
24
|
+
* and simplifies types using `simplifyType`.
|
|
25
|
+
*
|
|
26
|
+
* Since we may be missing AST information for some user-defined types, or even
|
|
27
|
+
* entire bases, the layout may be partial. It may be only up to a given base,
|
|
28
|
+
* and it may be missing exact type information for certain fields.
|
|
29
|
+
*
|
|
30
|
+
* We return a tuple with the resulting layout, and a boolean specifying whether
|
|
31
|
+
* the layout is complete.
|
|
32
|
+
*
|
|
33
|
+
* @param def
|
|
34
|
+
* @param infer
|
|
35
|
+
*/
|
|
36
|
+
export declare function getContractLayoutType(contract: sol.ContractDefinition, infer: sol.InferType): [rtt.StructType, boolean];
|
|
19
37
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/debug/decoding/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/debug/decoding/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAK3C,OAAO,EAGH,eAAe,EAIlB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AACtC,OAAO,KAAK,GAAG,MAAM,sBAAsB,CAAC;AAG5C,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAQjE;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAE/F;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,IAAI,eAAe,CAExD;AAED,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAErD;AAED,wBAAgB,kCAAkC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAErE;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,CAOjE;AAuBD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,qBAAqB,CACjC,QAAQ,EAAE,GAAG,CAAC,kBAAkB,EAChC,KAAK,EAAE,GAAG,CAAC,SAAS,GACrB,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAkD3B"}
|