sol-dbg 0.7.2 → 0.7.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/dist/debug/decoding/calldata/index.d.ts +1 -1
  2. package/dist/debug/decoding/calldata/index.d.ts.map +1 -1
  3. package/dist/debug/decoding/calldata/index.js +15 -3
  4. package/dist/debug/decoding/calldata/index.js.map +1 -1
  5. package/dist/debug/decoding/calldata/view.d.ts +33 -7
  6. package/dist/debug/decoding/calldata/view.d.ts.map +1 -1
  7. package/dist/debug/decoding/calldata/view.js +125 -12
  8. package/dist/debug/decoding/calldata/view.js.map +1 -1
  9. package/dist/debug/decoding/index.d.ts +2 -0
  10. package/dist/debug/decoding/index.d.ts.map +1 -1
  11. package/dist/debug/decoding/index.js +2 -0
  12. package/dist/debug/decoding/index.js.map +1 -1
  13. package/dist/debug/decoding/memory/index.d.ts +2 -1
  14. package/dist/debug/decoding/memory/index.d.ts.map +1 -1
  15. package/dist/debug/decoding/memory/index.js +16 -3
  16. package/dist/debug/decoding/memory/index.js.map +1 -1
  17. package/dist/debug/decoding/memory/view.d.ts +28 -6
  18. package/dist/debug/decoding/memory/view.d.ts.map +1 -1
  19. package/dist/debug/decoding/memory/view.js +92 -6
  20. package/dist/debug/decoding/memory/view.js.map +1 -1
  21. package/dist/debug/decoding/stack/index.d.ts +1 -1
  22. package/dist/debug/decoding/stack/index.d.ts.map +1 -1
  23. package/dist/debug/decoding/stack/index.js +15 -3
  24. package/dist/debug/decoding/stack/index.js.map +1 -1
  25. package/dist/debug/decoding/stack/view.d.ts +10 -2
  26. package/dist/debug/decoding/stack/view.d.ts.map +1 -1
  27. package/dist/debug/decoding/stack/view.js +29 -2
  28. package/dist/debug/decoding/stack/view.js.map +1 -1
  29. package/dist/debug/decoding/storage/index.d.ts +1 -1
  30. package/dist/debug/decoding/storage/index.d.ts.map +1 -1
  31. package/dist/debug/decoding/storage/index.js +15 -3
  32. package/dist/debug/decoding/storage/index.js.map +1 -1
  33. package/dist/debug/decoding/storage/view.d.ts +35 -7
  34. package/dist/debug/decoding/storage/view.d.ts.map +1 -1
  35. package/dist/debug/decoding/storage/view.js +155 -15
  36. package/dist/debug/decoding/storage/view.js.map +1 -1
  37. package/dist/debug/decoding/view.d.ts +13 -1
  38. package/dist/debug/decoding/view.d.ts.map +1 -1
  39. package/dist/debug/types.d.ts +0 -36
  40. package/dist/debug/types.d.ts.map +1 -1
  41. package/dist/debug/types.js +1 -8
  42. package/dist/debug/types.js.map +1 -1
  43. package/dist/utils/misc.d.ts +1 -3
  44. package/dist/utils/misc.d.ts.map +1 -1
  45. package/dist/utils/misc.js +0 -15
  46. package/dist/utils/misc.js.map +1 -1
  47. package/package.json +1 -1
@@ -1,2 +1,2 @@
1
- export { makeCalldataViews } from "./view";
1
+ export * from "./view";
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/debug/decoding/calldata/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/debug/decoding/calldata/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC"}
@@ -1,6 +1,18 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
2
16
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.makeCalldataViews = void 0;
4
- var view_1 = require("./view");
5
- Object.defineProperty(exports, "makeCalldataViews", { enumerable: true, get: function () { return view_1.makeCalldataViews; } });
17
+ __exportStar(require("./view"), exports);
6
18
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/debug/decoding/calldata/index.ts"],"names":[],"mappings":";;;AAAA,+BAA2C;AAAlC,yGAAA,iBAAiB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/debug/decoding/calldata/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB"}
@@ -1,16 +1,19 @@
1
1
  import { AddressType, ArrayType, BoolType, BytesType, FixedBytesType, IntType, PointerType, TupleType, TypeNode } from "solc-typed-ast";
2
2
  import { Memory } from "../../types";
3
3
  import { DecodingFailure, Struct, Value } from "../value";
4
- import { View } from "../view";
4
+ import { ArrayLikeView, PointerView, StructView, View } from "../view";
5
5
  import { Address } from "@ethereumjs/util";
6
6
  import { ExpStructType, MissingType } from "../exp_types";
7
+ interface ArrayLikeCalldataView<ValViewT extends BaseCalldataView<Value, TypeNode>> extends ArrayLikeView<Memory, ValViewT> {
8
+ }
9
+ export declare function isArrayLikeCalldataView(v: any): v is ArrayLikeCalldataView<BaseCalldataView<Value, TypeNode>>;
7
10
  export declare abstract class BaseCalldataView<Val extends Value, Type extends TypeNode = TypeNode> extends View<Memory, Val, bigint, Type> {
8
11
  protected base: bigint;
9
12
  constructor(type: Type, loc: bigint, base: bigint);
10
13
  protected readMemAt(off: number | bigint, calldata: Memory, len: bigint | number): Uint8Array | DecodingFailure;
11
14
  protected decodeIntAt(offset: bigint, typ: IntType, calldata: Memory): bigint | DecodingFailure;
12
15
  decodeBytesAt(loc: bigint, state: Memory): Uint8Array | DecodingFailure;
13
- decodeTupleAt(loc: bigint, curBase: bigint, type: TupleType, state: Memory): Value[];
16
+ decodeTupleAt(loc: bigint, base: bigint, type: TupleType, state: Memory): Value[];
14
17
  pp(): string;
15
18
  get offset(): bigint;
16
19
  }
@@ -32,14 +35,27 @@ export declare class BoolCalldataView extends BaseCalldataView<boolean, BoolType
32
35
  export declare class AddressCalldataView extends BaseCalldataView<Address, AddressType> {
33
36
  decode(state: Memory): Address | DecodingFailure;
34
37
  }
38
+ /**
39
+ * We need a special SingleByteMemView for FixedBytesMemView's indexView() method.
40
+ * We cannot just re-use FixedBytesMemView, since even for a single byte, that will
41
+ * write 32 bytes with padded zeroes.
42
+ */
43
+ export declare class SingleByteCalldataView extends BaseCalldataView<number, FixedBytesType> {
44
+ constructor(loc: bigint, base: bigint);
45
+ decode(state: Memory): number | DecodingFailure;
46
+ }
35
47
  /**
36
48
  * View to an FixedBytes in calldata
37
49
  */
38
- export declare class FixedBytesCalldataView extends BaseCalldataView<Uint8Array, FixedBytesType> {
50
+ export declare class FixedBytesCalldataView extends BaseCalldataView<Uint8Array, FixedBytesType> implements ArrayLikeCalldataView<SingleByteCalldataView> {
39
51
  decode(state: Memory): Uint8Array | DecodingFailure;
52
+ indexView(key: bigint): DecodingFailure | SingleByteCalldataView;
53
+ size(): bigint | DecodingFailure;
40
54
  }
41
- export declare class BytesCalldataView extends BaseCalldataView<Uint8Array, BytesType> {
55
+ export declare class BytesCalldataView extends BaseCalldataView<Uint8Array, BytesType> implements ArrayLikeCalldataView<SingleByteCalldataView> {
42
56
  decode(state: Memory): Uint8Array | DecodingFailure;
57
+ indexView(key: bigint, state: Memory): DecodingFailure | SingleByteCalldataView;
58
+ size(state: Memory): bigint | DecodingFailure;
43
59
  }
44
60
  export declare class StringCalldataView extends BaseCalldataView<string, BytesType> {
45
61
  decode(state: Memory): string | DecodingFailure;
@@ -47,11 +63,16 @@ export declare class StringCalldataView extends BaseCalldataView<string, BytesTy
47
63
  export declare class TupleCalldataView extends BaseCalldataView<Value[], TupleType> {
48
64
  decode(state: Memory): Value[] | DecodingFailure;
49
65
  }
50
- export declare abstract class BaseArrayCalldataView extends BaseCalldataView<Value[], ArrayType> {
66
+ export declare abstract class BaseArrayCalldataView extends BaseCalldataView<Value[], ArrayType> implements ArrayLikeCalldataView<BaseCalldataView<Value, TypeNode>> {
51
67
  decodeArray(baseOff: bigint, bigIntSize: bigint, state: Memory): Value[] | DecodingFailure;
68
+ protected _indexView(key: bigint, baseOff: bigint, size: bigint): BaseCalldataView<Value, TypeNode> | DecodingFailure;
69
+ abstract indexView(key: bigint, state: Memory): BaseCalldataView<Value, TypeNode> | DecodingFailure;
70
+ abstract size(state: Memory): bigint | DecodingFailure;
52
71
  }
53
72
  export declare class ArrayCalldataView extends BaseArrayCalldataView {
54
73
  decode(state: Memory): Value[] | DecodingFailure;
74
+ indexView(key: bigint, state: Memory): BaseCalldataView<Value, TypeNode> | DecodingFailure;
75
+ size(state: Memory): bigint | DecodingFailure;
55
76
  }
56
77
  /**
57
78
  * An ArraySliceView is only created from stack locations. It should not be created in makeCalldataView.
@@ -60,16 +81,21 @@ export declare class ArraySliceCalldataView extends BaseArrayCalldataView {
60
81
  protected len: bigint;
61
82
  constructor(type: ArrayType, loc: bigint, len: bigint);
62
83
  decode(state: Memory): Value[] | DecodingFailure;
84
+ indexView(key: bigint): BaseCalldataView<Value, TypeNode> | DecodingFailure;
85
+ size(): bigint | DecodingFailure;
63
86
  }
64
- export declare class StructCalldataView extends BaseCalldataView<Struct, ExpStructType> {
87
+ export declare class StructCalldataView extends BaseCalldataView<Struct, ExpStructType> implements StructView<Memory, BaseCalldataView<Value, TypeNode>> {
65
88
  decode(state: Memory): Struct;
89
+ fieldView(name: string): DecodingFailure | BaseCalldataView<Value, TypeNode>;
66
90
  }
67
- export declare class PointerCalldataView extends BaseCalldataView<Value, PointerType> {
91
+ export declare class PointerCalldataView extends BaseCalldataView<Value, PointerType> implements PointerView<Memory, BaseCalldataView<Value, TypeNode>> {
68
92
  decode(state: Memory): Value | DecodingFailure;
93
+ toView(state: Memory): DecodingFailure | BaseCalldataView<Value, TypeNode>;
69
94
  }
70
95
  export declare class MissingCalldataView extends BaseCalldataView<DecodingFailure, MissingType> {
71
96
  decode(): DecodingFailure;
72
97
  }
73
98
  export declare function makeCalldataView(type: TypeNode, loc: bigint, base: bigint): BaseCalldataView<Value, TypeNode>;
74
99
  export declare function makeCalldataViews(types: TypeNode[], base: bigint): Array<BaseCalldataView<Value, TypeNode>>;
100
+ export {};
75
101
  //# sourceMappingURL=view.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../../src/debug/decoding/calldata/view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../../src/debug/decoding/calldata/view.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MissingCalldataView = exports.PointerCalldataView = exports.StructCalldataView = exports.ArraySliceCalldataView = exports.ArrayCalldataView = exports.BaseArrayCalldataView = exports.TupleCalldataView = exports.StringCalldataView = exports.BytesCalldataView = exports.FixedBytesCalldataView = exports.AddressCalldataView = exports.BoolCalldataView = exports.IntCalldataView = exports.BaseCalldataView = void 0;
3
+ exports.MissingCalldataView = exports.PointerCalldataView = exports.StructCalldataView = exports.ArraySliceCalldataView = exports.ArrayCalldataView = exports.BaseArrayCalldataView = exports.TupleCalldataView = exports.StringCalldataView = exports.BytesCalldataView = exports.FixedBytesCalldataView = exports.SingleByteCalldataView = exports.AddressCalldataView = exports.BoolCalldataView = exports.IntCalldataView = exports.BaseCalldataView = void 0;
4
+ exports.isArrayLikeCalldataView = isArrayLikeCalldataView;
4
5
  exports.makeCalldataView = makeCalldataView;
5
6
  exports.makeCalldataViews = makeCalldataViews;
6
7
  const solc_typed_ast_1 = require("solc-typed-ast");
@@ -10,6 +11,11 @@ const utils_1 = require("../../../utils");
10
11
  const util_1 = require("@ethereumjs/util");
11
12
  const utils_2 = require("../utils");
12
13
  const exp_types_1 = require("../exp_types");
14
+ function isArrayLikeCalldataView(v) {
15
+ return (v instanceof FixedBytesCalldataView ||
16
+ v instanceof ArrayCalldataView ||
17
+ v instanceof BytesCalldataView);
18
+ }
13
19
  /**
14
20
  * Return true IFF the given type is "dynamic". I,e. its size is not statically known.
15
21
  * @param t
@@ -146,12 +152,7 @@ class BaseCalldataView extends view_1.View {
146
152
  }
147
153
  return this.readMemAt(loc + 32n, state, len);
148
154
  }
149
- decodeTupleAt(loc, curBase, type, state) {
150
- let base = curBase;
151
- if (isTypeDynamic(type)) {
152
- base = loc + curBase;
153
- loc = 0n;
154
- }
155
+ decodeTupleAt(loc, base, type, state) {
155
156
  const res = [];
156
157
  let failRemaining = false;
157
158
  for (const t of type.elements) {
@@ -213,6 +214,24 @@ class AddressCalldataView extends BaseCalldataView {
213
214
  }
214
215
  }
215
216
  exports.AddressCalldataView = AddressCalldataView;
217
+ /**
218
+ * We need a special SingleByteMemView for FixedBytesMemView's indexView() method.
219
+ * We cannot just re-use FixedBytesMemView, since even for a single byte, that will
220
+ * write 32 bytes with padded zeroes.
221
+ */
222
+ class SingleByteCalldataView extends BaseCalldataView {
223
+ constructor(loc, base) {
224
+ super(solc_typed_ast_1.types.byte, loc, base);
225
+ }
226
+ decode(state) {
227
+ const off = this.loc + this.base;
228
+ if (off < 0 || off > state.length) {
229
+ return new value_1.DecodingFailure(`OoB byte access at ${off}`);
230
+ }
231
+ return state[Number(off)];
232
+ }
233
+ }
234
+ exports.SingleByteCalldataView = SingleByteCalldataView;
216
235
  /**
217
236
  * View to an FixedBytes in calldata
218
237
  */
@@ -220,12 +239,34 @@ class FixedBytesCalldataView extends BaseCalldataView {
220
239
  decode(state) {
221
240
  return this.readMemAt(this.loc, state, this.type.size);
222
241
  }
242
+ indexView(key) {
243
+ if (key >= this.type.size || key < 0n) {
244
+ return new value_1.DecodingFailure(`Invalid index ${key} in ${this.type.pp()}`);
245
+ }
246
+ return new SingleByteCalldataView(this.loc + key, this.base);
247
+ }
248
+ size() {
249
+ return BigInt(this.type.size);
250
+ }
223
251
  }
224
252
  exports.FixedBytesCalldataView = FixedBytesCalldataView;
225
253
  class BytesCalldataView extends BaseCalldataView {
226
254
  decode(state) {
227
255
  return this.decodeBytesAt(this.loc, state);
228
256
  }
257
+ indexView(key, state) {
258
+ const len = this.decodeIntAt(this.loc, utils_1.uint256, state);
259
+ if ((0, utils_2.isFailure)(len)) {
260
+ return len;
261
+ }
262
+ if (key >= len || key < 0n) {
263
+ return new value_1.DecodingFailure(`Invalid index ${key} in bytes of len ${len}`);
264
+ }
265
+ return new SingleByteCalldataView(this.loc + 32n + key, this.base);
266
+ }
267
+ size(state) {
268
+ return this.decodeIntAt(this.loc, utils_1.uint256, state);
269
+ }
229
270
  }
230
271
  exports.BytesCalldataView = BytesCalldataView;
231
272
  class StringCalldataView extends BaseCalldataView {
@@ -241,13 +282,16 @@ exports.StringCalldataView = StringCalldataView;
241
282
  class TupleCalldataView extends BaseCalldataView {
242
283
  decode(state) {
243
284
  let offset = this.loc;
285
+ let base = this.base;
244
286
  if (isTypeDynamic(this.type)) {
245
287
  offset = this.decodeIntAt(offset, utils_1.uint256, state);
246
288
  if ((0, utils_2.isFailure)(offset)) {
247
289
  return offset;
248
290
  }
291
+ base = offset + this.base;
292
+ offset = 0n;
249
293
  }
250
- return this.decodeTupleAt(offset, this.base, this.type, state);
294
+ return this.decodeTupleAt(offset, base, this.type, state);
251
295
  }
252
296
  }
253
297
  exports.TupleCalldataView = TupleCalldataView;
@@ -272,6 +316,18 @@ class BaseArrayCalldataView extends BaseCalldataView {
272
316
  }
273
317
  return res;
274
318
  }
319
+ _indexView(key, baseOff, size) {
320
+ if (key >= size || key < 0n) {
321
+ return new value_1.DecodingFailure(`Invalid index ${key} in array of size ${size}`);
322
+ }
323
+ const newBase = baseOff + this.base;
324
+ const hs = headSize(this.type.elementT);
325
+ if (hs === undefined) {
326
+ return new value_1.DecodingFailure(`Can't compute head size of ${this.type.elementT.pp()}`);
327
+ }
328
+ const elSize = BigInt(hs);
329
+ return makeCalldataView(this.type.elementT, elSize * key, newBase);
330
+ }
275
331
  }
276
332
  exports.BaseArrayCalldataView = BaseArrayCalldataView;
277
333
  class ArrayCalldataView extends BaseArrayCalldataView {
@@ -292,6 +348,29 @@ class ArrayCalldataView extends BaseArrayCalldataView {
292
348
  }
293
349
  return this.decodeArray(baseOff, bigintSize, state);
294
350
  }
351
+ indexView(key, state) {
352
+ let baseOff = this.loc;
353
+ // Dynamic sized arrays have length at the start. Fixed sized arrays do
354
+ // not.
355
+ let size;
356
+ if (this.type.size !== undefined) {
357
+ size = this.type.size;
358
+ }
359
+ else {
360
+ size = this.decodeIntAt(baseOff, utils_1.uint256, state);
361
+ if ((0, utils_2.isFailure)(size)) {
362
+ return size;
363
+ }
364
+ baseOff += 32n;
365
+ }
366
+ return this._indexView(key, baseOff, size);
367
+ }
368
+ size(state) {
369
+ if (this.type.size !== undefined) {
370
+ return BigInt(this.type.size);
371
+ }
372
+ return this.decodeIntAt(this.loc, utils_1.uint256, state);
373
+ }
295
374
  }
296
375
  exports.ArrayCalldataView = ArrayCalldataView;
297
376
  /**
@@ -299,33 +378,67 @@ exports.ArrayCalldataView = ArrayCalldataView;
299
378
  */
300
379
  class ArraySliceCalldataView extends BaseArrayCalldataView {
301
380
  constructor(type, loc, len) {
381
+ // Note: The base is 0n on purpose here since this is created from stack values?
302
382
  super(type, loc, 0n);
303
383
  this.len = len;
304
384
  }
305
385
  decode(state) {
306
386
  return this.decodeArray(this.loc, this.len, state);
307
387
  }
388
+ indexView(key) {
389
+ return this._indexView(key, this.loc, this.len);
390
+ }
391
+ size() {
392
+ return this.len;
393
+ }
308
394
  }
309
395
  exports.ArraySliceCalldataView = ArraySliceCalldataView;
310
396
  class StructCalldataView extends BaseCalldataView {
311
397
  decode(state) {
312
- const offset = this.loc;
313
- const values = this.decodeTupleAt(offset, this.base, new solc_typed_ast_1.TupleType(this.type.fields.map(([, type]) => type)), state);
398
+ // A StructCalldataView should be wrapped in a PointerCalldataView. So translating
399
+ // the base should be handled by PointerCalldataView.decode
400
+ const values = this.decodeTupleAt(this.loc, this.base, new solc_typed_ast_1.TupleType(this.type.fields.map(([, type]) => type)), state);
314
401
  return new value_1.Struct((0, utils_1.zip)(this.type.fields.map(([name]) => name), values));
315
402
  }
403
+ fieldView(name) {
404
+ let base = this.base;
405
+ let loc = this.loc;
406
+ if (isTypeDynamic(this.type)) {
407
+ base = loc + this.base;
408
+ loc = 0n;
409
+ }
410
+ for (const [fieldName, fieldType] of this.type.fields) {
411
+ if (name === fieldName) {
412
+ return makeCalldataView(fieldType, loc, base);
413
+ }
414
+ const tSize = headSize(fieldType);
415
+ if (tSize === undefined) {
416
+ return new value_1.DecodingFailure(`Couldn't compute head size for field ${fieldName} in ${this.type.name}`);
417
+ }
418
+ loc += BigInt(tSize);
419
+ }
420
+ return new value_1.DecodingFailure(`No field ${name} on type ${this.type.pp()}`);
421
+ }
316
422
  }
317
423
  exports.StructCalldataView = StructCalldataView;
318
424
  class PointerCalldataView extends BaseCalldataView {
319
425
  decode(state) {
426
+ const innerView = this.toView(state);
427
+ if ((0, utils_2.isFailure)(innerView)) {
428
+ return innerView;
429
+ }
430
+ return innerView.decode(state);
431
+ }
432
+ toView(state) {
320
433
  let off = this.loc;
321
434
  if (isTypeDynamic(this.type.to)) {
322
435
  off = this.decodeIntAt(off, utils_1.uint256, state);
323
436
  if ((0, utils_2.isFailure)(off)) {
324
437
  return off;
325
438
  }
439
+ return makeCalldataView(this.type.to, 0n, this.base + off);
326
440
  }
327
- const innerView = makeCalldataView(this.type.to, off, this.base);
328
- return innerView.decode(state);
441
+ return makeCalldataView(this.type.to, off, this.base);
329
442
  }
330
443
  }
331
444
  exports.PointerCalldataView = PointerCalldataView;
@@ -1 +1 @@
1
- {"version":3,"file":"view.js","sourceRoot":"","sources":["../../../../src/debug/decoding/calldata/view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"view.js","sourceRoot":"","sources":["../../../../src/debug/decoding/calldata/view.ts"],"names":[],"mappings":"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"}
@@ -4,4 +4,6 @@ export * from "./memory";
4
4
  export * from "./stack";
5
5
  export * from "./storage";
6
6
  export * from "./exp_types";
7
+ export * from "./value";
8
+ export * from "./view";
7
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/debug/decoding/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/debug/decoding/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC"}
@@ -20,4 +20,6 @@ __exportStar(require("./memory"), exports);
20
20
  __exportStar(require("./stack"), exports);
21
21
  __exportStar(require("./storage"), exports);
22
22
  __exportStar(require("./exp_types"), exports);
23
+ __exportStar(require("./value"), exports);
24
+ __exportStar(require("./view"), exports);
23
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/debug/decoding/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,4CAA0B;AAC1B,2CAAyB;AACzB,0CAAwB;AACxB,4CAA0B;AAC1B,8CAA4B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/debug/decoding/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,4CAA0B;AAC1B,2CAAyB;AACzB,0CAAwB;AACxB,4CAA0B;AAC1B,8CAA4B;AAC5B,0CAAwB;AACxB,yCAAuB"}
@@ -1,2 +1,3 @@
1
- export { makeMemoryView } from "./view";
1
+ export * from "./view";
2
+ export * from "./allocator";
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/debug/decoding/memory/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/debug/decoding/memory/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC"}
@@ -1,6 +1,19 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
2
16
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.makeMemoryView = void 0;
4
- var view_1 = require("./view");
5
- Object.defineProperty(exports, "makeMemoryView", { enumerable: true, get: function () { return view_1.makeMemoryView; } });
17
+ __exportStar(require("./view"), exports);
18
+ __exportStar(require("./allocator"), exports);
6
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/debug/decoding/memory/index.ts"],"names":[],"mappings":";;;AAAA,+BAAwC;AAA/B,sGAAA,cAAc,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/debug/decoding/memory/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,8CAA4B"}
@@ -1,10 +1,13 @@
1
1
  import { AddressType, ArrayType, BoolType, BytesType, FixedBytesType, IntType, PointerType, StringType, TypeNode } from "solc-typed-ast";
2
2
  import { Memory } from "../../types";
3
- import { View } from "../view";
3
+ import { ArrayLikeView, PointerView, StructView, View } from "../view";
4
4
  import { DecodingFailure, Struct, Value } from "../value";
5
5
  import { Address } from "@ethereumjs/util";
6
6
  import { ExpStructType, MissingType } from "../exp_types";
7
7
  import { Allocator } from "./allocator";
8
+ interface ArrayLikeMemView<ValViewT extends BaseMemoryView<Value, TypeNode>> extends ArrayLikeView<Memory, ValViewT> {
9
+ }
10
+ export declare function isArrayLikeMemView(v: any): v is ArrayLikeMemView<BaseMemoryView<Value, TypeNode>>;
8
11
  export declare abstract class BaseMemoryView<Val extends Value, Type extends TypeNode = TypeNode> extends View<Memory, Val, bigint, Type> {
9
12
  protected writeMemAt(value: Uint8Array, off: bigint, mem: Memory): void;
10
13
  protected readMemAt(off: bigint, calldata: Memory, len: bigint | number): Uint8Array | DecodingFailure;
@@ -26,41 +29,60 @@ export declare class BoolMemView extends BaseMemoryView<boolean, BoolType> {
26
29
  decode(state: Memory): boolean | DecodingFailure;
27
30
  encode(value: boolean, state: Memory): void;
28
31
  }
29
- export declare class FixedBytesMemView extends BaseMemoryView<Uint8Array, FixedBytesType> {
32
+ /**
33
+ * We need a special SingleByteMemView for FixedBytesMemView's indexView() method.
34
+ * We cannot just re-use FixedBytesMemView, since even for a single byte, that will
35
+ * write 32 bytes with padded zeroes.
36
+ */
37
+ export declare class SingleByteMemView extends BaseMemoryView<number, FixedBytesType> {
38
+ constructor(loc: bigint);
39
+ decode(state: Memory): number | DecodingFailure;
40
+ encode(value: number, state: Memory): void;
41
+ }
42
+ export declare class FixedBytesMemView extends BaseMemoryView<Uint8Array, FixedBytesType> implements ArrayLikeMemView<SingleByteMemView> {
30
43
  decode(state: Memory): Uint8Array | DecodingFailure;
31
44
  encode(value: Uint8Array<ArrayBufferLike>, state: Memory): void;
45
+ indexView(key: bigint): DecodingFailure | SingleByteMemView;
46
+ size(): bigint;
32
47
  }
33
48
  export declare abstract class PackedArrayMemView<V extends Value, T extends TypeNode> extends BaseMemoryView<V, T> {
34
49
  protected decodeBytesAt(loc: bigint, state: Memory): Uint8Array | DecodingFailure;
35
50
  protected encodeBytesAt(value: Uint8Array, off: bigint, state: Memory): void;
36
51
  }
37
- export declare class BytesMemView extends PackedArrayMemView<Uint8Array, BytesType> {
52
+ export declare class BytesMemView extends PackedArrayMemView<Uint8Array, BytesType> implements ArrayLikeMemView<SingleByteMemView> {
38
53
  decode(state: Memory): Uint8Array | DecodingFailure;
39
54
  encode(value: Uint8Array, state: Memory): void;
55
+ indexView(key: bigint, state: Memory): DecodingFailure | SingleByteMemView;
56
+ size(state: Memory): bigint | DecodingFailure;
40
57
  }
41
58
  export declare class StringMemView extends PackedArrayMemView<string, StringType> {
42
59
  decode(state: Memory): string | DecodingFailure;
43
60
  encode(value: string, state: Memory): void;
44
61
  }
45
- export declare class ArrayMemView extends BaseMemoryView<Value[], ArrayType> {
62
+ export declare class ArrayMemView extends BaseMemoryView<Value[], ArrayType> implements ArrayLikeMemView<BaseMemoryView<Value, TypeNode>> {
46
63
  decode(state: Memory): Value[] | DecodingFailure;
47
64
  encode(value: Value[], state: Memory, alloc: Allocator): void;
65
+ indexView(key: bigint, state: Memory): BaseMemoryView<Value, TypeNode> | DecodingFailure;
66
+ size(state: Memory): bigint | DecodingFailure;
48
67
  }
49
- export declare class StructMemView extends BaseMemoryView<Struct, ExpStructType> {
68
+ export declare class StructMemView extends BaseMemoryView<Struct, ExpStructType> implements StructView<Memory, BaseMemoryView<Value, TypeNode>> {
50
69
  decode(state: Memory): Struct;
51
70
  encode(value: Struct, state: Memory, alloc: Allocator): void;
71
+ fieldView(name: string): BaseMemoryView<Value, TypeNode> | DecodingFailure;
52
72
  }
53
- export declare class PointerMemView extends BaseMemoryView<Value, PointerType> {
73
+ export declare class PointerMemView extends BaseMemoryView<Value, PointerType> implements PointerView<Memory, BaseMemoryView<Value, TypeNode>> {
54
74
  decode(state: Memory): Value | DecodingFailure;
55
75
  /**
56
76
  * Helper to compute how much memory we need to allocate for a pointed-to value of type t
57
77
  */
58
78
  static allocSize(v: Value | undefined, t: TypeNode): number;
59
79
  encode(value: Value, state: Memory, alloc: Allocator): void;
80
+ toView(state: Memory): BaseMemoryView<Value, TypeNode> | DecodingFailure;
60
81
  }
61
82
  export declare class MissingMemView extends BaseMemoryView<Value, MissingType> {
62
83
  decode(): DecodingFailure;
63
84
  encode(): void;
64
85
  }
65
86
  export declare function makeMemoryView(type: TypeNode, loc: bigint): BaseMemoryView<Value, TypeNode>;
87
+ export {};
66
88
  //# sourceMappingURL=view.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../../src/debug/decoding/memory/view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../../src/debug/decoding/memory/view.ts"],"names":[],"mappings":"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"}