sol-dbg 0.7.2 → 0.7.3

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 (45) 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 +24 -7
  6. package/dist/debug/decoding/calldata/view.d.ts.map +1 -1
  7. package/dist/debug/decoding/calldata/view.js +104 -12
  8. package/dist/debug/decoding/calldata/view.js.map +1 -1
  9. package/dist/debug/decoding/index.d.ts +1 -0
  10. package/dist/debug/decoding/index.d.ts.map +1 -1
  11. package/dist/debug/decoding/index.js +1 -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 +21 -6
  18. package/dist/debug/decoding/memory/view.d.ts.map +1 -1
  19. package/dist/debug/decoding/memory/view.js +76 -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.js +1 -1
  26. package/dist/debug/decoding/stack/view.js.map +1 -1
  27. package/dist/debug/decoding/storage/index.d.ts +1 -1
  28. package/dist/debug/decoding/storage/index.d.ts.map +1 -1
  29. package/dist/debug/decoding/storage/index.js +15 -3
  30. package/dist/debug/decoding/storage/index.js.map +1 -1
  31. package/dist/debug/decoding/storage/view.d.ts +30 -7
  32. package/dist/debug/decoding/storage/view.d.ts.map +1 -1
  33. package/dist/debug/decoding/storage/view.js +140 -15
  34. package/dist/debug/decoding/storage/view.js.map +1 -1
  35. package/dist/debug/decoding/view.d.ts +10 -1
  36. package/dist/debug/decoding/view.d.ts.map +1 -1
  37. package/dist/debug/types.d.ts +0 -36
  38. package/dist/debug/types.d.ts.map +1 -1
  39. package/dist/debug/types.js +1 -8
  40. package/dist/debug/types.js.map +1 -1
  41. package/dist/utils/misc.d.ts +1 -3
  42. package/dist/utils/misc.d.ts.map +1 -1
  43. package/dist/utils/misc.js +0 -15
  44. package/dist/utils/misc.js.map +1 -1
  45. 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,7 +1,7 @@
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 { IndexableView, PointerView, StructView, View } from "../view";
5
5
  import { Address } from "@ethereumjs/util";
6
6
  import { ExpStructType, MissingType } from "../exp_types";
7
7
  export declare abstract class BaseCalldataView<Val extends Value, Type extends TypeNode = TypeNode> extends View<Memory, Val, bigint, Type> {
@@ -10,7 +10,7 @@ export declare abstract class BaseCalldataView<Val extends Value, Type extends T
10
10
  protected readMemAt(off: number | bigint, calldata: Memory, len: bigint | number): Uint8Array | DecodingFailure;
11
11
  protected decodeIntAt(offset: bigint, typ: IntType, calldata: Memory): bigint | DecodingFailure;
12
12
  decodeBytesAt(loc: bigint, state: Memory): Uint8Array | DecodingFailure;
13
- decodeTupleAt(loc: bigint, curBase: bigint, type: TupleType, state: Memory): Value[];
13
+ decodeTupleAt(loc: bigint, base: bigint, type: TupleType, state: Memory): Value[];
14
14
  pp(): string;
15
15
  get offset(): bigint;
16
16
  }
@@ -32,14 +32,25 @@ export declare class BoolCalldataView extends BaseCalldataView<boolean, BoolType
32
32
  export declare class AddressCalldataView extends BaseCalldataView<Address, AddressType> {
33
33
  decode(state: Memory): Address | DecodingFailure;
34
34
  }
35
+ /**
36
+ * We need a special SingleByteMemView for FixedBytesMemView's indexView() method.
37
+ * We cannot just re-use FixedBytesMemView, since even for a single byte, that will
38
+ * write 32 bytes with padded zeroes.
39
+ */
40
+ export declare class SingleByteCalldataView extends BaseCalldataView<number, FixedBytesType> {
41
+ constructor(loc: bigint, base: bigint);
42
+ decode(state: Memory): number | DecodingFailure;
43
+ }
35
44
  /**
36
45
  * View to an FixedBytes in calldata
37
46
  */
38
- export declare class FixedBytesCalldataView extends BaseCalldataView<Uint8Array, FixedBytesType> {
47
+ export declare class FixedBytesCalldataView extends BaseCalldataView<Uint8Array, FixedBytesType> implements IndexableView<bigint, Memory, SingleByteCalldataView> {
39
48
  decode(state: Memory): Uint8Array | DecodingFailure;
49
+ indexView(key: bigint): DecodingFailure | SingleByteCalldataView;
40
50
  }
41
- export declare class BytesCalldataView extends BaseCalldataView<Uint8Array, BytesType> {
51
+ export declare class BytesCalldataView extends BaseCalldataView<Uint8Array, BytesType> implements IndexableView<bigint, Memory, SingleByteCalldataView> {
42
52
  decode(state: Memory): Uint8Array | DecodingFailure;
53
+ indexView(key: bigint, state: Memory): DecodingFailure | SingleByteCalldataView;
43
54
  }
44
55
  export declare class StringCalldataView extends BaseCalldataView<string, BytesType> {
45
56
  decode(state: Memory): string | DecodingFailure;
@@ -47,11 +58,14 @@ export declare class StringCalldataView extends BaseCalldataView<string, BytesTy
47
58
  export declare class TupleCalldataView extends BaseCalldataView<Value[], TupleType> {
48
59
  decode(state: Memory): Value[] | DecodingFailure;
49
60
  }
50
- export declare abstract class BaseArrayCalldataView extends BaseCalldataView<Value[], ArrayType> {
61
+ export declare abstract class BaseArrayCalldataView extends BaseCalldataView<Value[], ArrayType> implements IndexableView<bigint, Memory, BaseCalldataView<Value, TypeNode>> {
51
62
  decodeArray(baseOff: bigint, bigIntSize: bigint, state: Memory): Value[] | DecodingFailure;
63
+ protected _indexView(key: bigint, baseOff: bigint, size: bigint): BaseCalldataView<Value, TypeNode> | DecodingFailure;
64
+ abstract indexView(key: bigint, state: Memory): BaseCalldataView<Value, TypeNode> | DecodingFailure;
52
65
  }
53
66
  export declare class ArrayCalldataView extends BaseArrayCalldataView {
54
67
  decode(state: Memory): Value[] | DecodingFailure;
68
+ indexView(key: bigint, state: Memory): BaseCalldataView<Value, TypeNode> | DecodingFailure;
55
69
  }
56
70
  /**
57
71
  * An ArraySliceView is only created from stack locations. It should not be created in makeCalldataView.
@@ -60,12 +74,15 @@ export declare class ArraySliceCalldataView extends BaseArrayCalldataView {
60
74
  protected len: bigint;
61
75
  constructor(type: ArrayType, loc: bigint, len: bigint);
62
76
  decode(state: Memory): Value[] | DecodingFailure;
77
+ indexView(key: bigint): BaseCalldataView<Value, TypeNode> | DecodingFailure;
63
78
  }
64
- export declare class StructCalldataView extends BaseCalldataView<Struct, ExpStructType> {
79
+ export declare class StructCalldataView extends BaseCalldataView<Struct, ExpStructType> implements StructView<Memory, BaseCalldataView<Value, TypeNode>> {
65
80
  decode(state: Memory): Struct;
81
+ fieldView(name: string): DecodingFailure | BaseCalldataView<Value, TypeNode>;
66
82
  }
67
- export declare class PointerCalldataView extends BaseCalldataView<Value, PointerType> {
83
+ export declare class PointerCalldataView extends BaseCalldataView<Value, PointerType> implements PointerView<Memory, BaseCalldataView<Value, TypeNode>> {
68
84
  decode(state: Memory): Value | DecodingFailure;
85
+ toView(state: Memory): DecodingFailure | BaseCalldataView<Value, TypeNode>;
69
86
  }
70
87
  export declare class MissingCalldataView extends BaseCalldataView<DecodingFailure, MissingType> {
71
88
  decode(): DecodingFailure;
@@ -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":"AAAA,OAAO,EACH,WAAW,EACX,SAAS,EAET,QAAQ,EACR,SAAS,EACT,cAAc,EACd,OAAO,EACP,WAAW,EAEX,SAAS,EACT,QAAQ,EAEX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAUvE,OAAO,EAAE,OAAO,EAAe,MAAM,kBAAkB,CAAC;AAExD,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AA2H1D,8BAAsB,gBAAgB,CAClC,GAAG,SAAS,KAAK,EACjB,IAAI,SAAS,QAAQ,GAAG,QAAQ,CAClC,SAAQ,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC;IAIjC,SAAS,CAAC,IAAI,EAAE,MAAM;gBAFtB,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,MAAM,EACD,IAAI,EAAE,MAAM;IAK1B,SAAS,CAAC,SAAS,CACf,GAAG,EAAE,MAAM,GAAG,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,GAAG,MAAM,GACrB,UAAU,GAAG,eAAe;IAc/B,SAAS,CAAC,WAAW,CACjB,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,OAAO,EACZ,QAAQ,EAAE,MAAM,GACjB,MAAM,GAAG,eAAe;IAuB3B,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,eAAe;IAcvE,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,EAAE;IAuBjF,EAAE,IAAI,MAAM;IAIZ,IAAI,MAAM,IAAI,MAAM,CAEnB;CACJ;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC;IAClE,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,eAAe;CAGlD;AAED;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC;IACrE,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,eAAe;CASnD;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC;IAC3E,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,eAAe;CASnD;AAED;;;;GAIG;AACH,qBAAa,sBAAuB,SAAQ,gBAAgB,CAAC,MAAM,EAAE,cAAc,CAAC;gBACpE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAIrC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,eAAe;CASlD;AAED;;GAEG;AACH,qBAAa,sBACT,SAAQ,gBAAgB,CAAC,UAAU,EAAE,cAAc,CACnD,YAAW,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,sBAAsB,CAAC;IAEhE,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,eAAe;IAInD,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,GAAG,sBAAsB;CAOnE;AAED,qBAAa,iBACT,SAAQ,gBAAgB,CAAC,UAAU,EAAE,SAAS,CAC9C,YAAW,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,sBAAsB,CAAC;IAEhE,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,eAAe;IAInD,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,eAAe,GAAG,sBAAsB;CAalF;AAED,qBAAa,kBAAmB,SAAQ,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC;IACvE,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,eAAe;CASlD;AAED,qBAAa,iBAAkB,SAAQ,gBAAgB,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC;IACvE,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,EAAE,GAAG,eAAe;CAgBnD;AAED,8BAAsB,qBAClB,SAAQ,gBAAgB,CAAC,KAAK,EAAE,EAAE,SAAS,CAC3C,YAAW,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAE3E,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,EAAE,GAAG,eAAe;IA2B1F,SAAS,CAAC,UAAU,CAChB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,GACb,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,eAAe;IAgBtD,QAAQ,CAAC,SAAS,CACd,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GACd,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,eAAe;CACzD;AAED,qBAAa,iBAAkB,SAAQ,qBAAqB;IACxD,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,EAAE,GAAG,eAAe;IAqBhD,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,eAAe;CAoB7F;AAED;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,qBAAqB;IAIzD,SAAS,CAAC,GAAG,EAAE,MAAM;gBAFrB,IAAI,EAAE,SAAS,EACf,GAAG,EAAE,MAAM,EACD,GAAG,EAAE,MAAM;IAMzB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,EAAE,GAAG,eAAe;IAIhD,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,eAAe;CAG9E;AAED,qBAAa,kBACT,SAAQ,gBAAgB,CAAC,MAAM,EAAE,aAAa,CAC9C,YAAW,UAAU,CAAC,MAAM,EAAE,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAEhE,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAiB7B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC;CA2B/E;AAED,qBAAa,mBACT,SAAQ,gBAAgB,CAAC,KAAK,EAAE,WAAW,CAC3C,YAAW,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAEjE,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,GAAG,eAAe;IAU9C,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,GAAG,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC;CAe7E;AAED,qBAAa,mBAAoB,SAAQ,gBAAgB,CAAC,eAAe,EAAE,WAAW,CAAC;IACnF,MAAM,IAAI,eAAe;CAK5B;AAED,wBAAgB,gBAAgB,CAC5B,IAAI,EAAE,QAAQ,EACd,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,GACb,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAkDnC;AAED,wBAAgB,iBAAiB,CAC7B,KAAK,EAAE,QAAQ,EAAE,EACjB,IAAI,EAAE,MAAM,GACb,KAAK,CAAC,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CA0B1C"}
@@ -1,6 +1,6 @@
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
4
  exports.makeCalldataView = makeCalldataView;
5
5
  exports.makeCalldataViews = makeCalldataViews;
6
6
  const solc_typed_ast_1 = require("solc-typed-ast");
@@ -146,12 +146,7 @@ class BaseCalldataView extends view_1.View {
146
146
  }
147
147
  return this.readMemAt(loc + 32n, state, len);
148
148
  }
149
- decodeTupleAt(loc, curBase, type, state) {
150
- let base = curBase;
151
- if (isTypeDynamic(type)) {
152
- base = loc + curBase;
153
- loc = 0n;
154
- }
149
+ decodeTupleAt(loc, base, type, state) {
155
150
  const res = [];
156
151
  let failRemaining = false;
157
152
  for (const t of type.elements) {
@@ -213,6 +208,24 @@ class AddressCalldataView extends BaseCalldataView {
213
208
  }
214
209
  }
215
210
  exports.AddressCalldataView = AddressCalldataView;
211
+ /**
212
+ * We need a special SingleByteMemView for FixedBytesMemView's indexView() method.
213
+ * We cannot just re-use FixedBytesMemView, since even for a single byte, that will
214
+ * write 32 bytes with padded zeroes.
215
+ */
216
+ class SingleByteCalldataView extends BaseCalldataView {
217
+ constructor(loc, base) {
218
+ super(solc_typed_ast_1.types.byte, loc, base);
219
+ }
220
+ decode(state) {
221
+ const off = this.loc + this.base;
222
+ if (off < 0 || off > state.length) {
223
+ return new value_1.DecodingFailure(`OoB byte access at ${off}`);
224
+ }
225
+ return state[Number(off)];
226
+ }
227
+ }
228
+ exports.SingleByteCalldataView = SingleByteCalldataView;
216
229
  /**
217
230
  * View to an FixedBytes in calldata
218
231
  */
@@ -220,12 +233,28 @@ class FixedBytesCalldataView extends BaseCalldataView {
220
233
  decode(state) {
221
234
  return this.readMemAt(this.loc, state, this.type.size);
222
235
  }
236
+ indexView(key) {
237
+ if (key >= this.type.size || key < 0n) {
238
+ return new value_1.DecodingFailure(`Invalid index ${key} in ${this.type.pp()}`);
239
+ }
240
+ return new SingleByteCalldataView(this.loc + key, this.base);
241
+ }
223
242
  }
224
243
  exports.FixedBytesCalldataView = FixedBytesCalldataView;
225
244
  class BytesCalldataView extends BaseCalldataView {
226
245
  decode(state) {
227
246
  return this.decodeBytesAt(this.loc, state);
228
247
  }
248
+ indexView(key, state) {
249
+ const len = this.decodeIntAt(this.loc, utils_1.uint256, state);
250
+ if ((0, utils_2.isFailure)(len)) {
251
+ return len;
252
+ }
253
+ if (key >= len || key < 0n) {
254
+ return new value_1.DecodingFailure(`Invalid index ${key} in bytes of len ${len}`);
255
+ }
256
+ return new SingleByteCalldataView(this.loc + 32n + key, this.base);
257
+ }
229
258
  }
230
259
  exports.BytesCalldataView = BytesCalldataView;
231
260
  class StringCalldataView extends BaseCalldataView {
@@ -241,13 +270,16 @@ exports.StringCalldataView = StringCalldataView;
241
270
  class TupleCalldataView extends BaseCalldataView {
242
271
  decode(state) {
243
272
  let offset = this.loc;
273
+ let base = this.base;
244
274
  if (isTypeDynamic(this.type)) {
245
275
  offset = this.decodeIntAt(offset, utils_1.uint256, state);
246
276
  if ((0, utils_2.isFailure)(offset)) {
247
277
  return offset;
248
278
  }
279
+ base = offset + this.base;
280
+ offset = 0n;
249
281
  }
250
- return this.decodeTupleAt(offset, this.base, this.type, state);
282
+ return this.decodeTupleAt(offset, base, this.type, state);
251
283
  }
252
284
  }
253
285
  exports.TupleCalldataView = TupleCalldataView;
@@ -272,6 +304,18 @@ class BaseArrayCalldataView extends BaseCalldataView {
272
304
  }
273
305
  return res;
274
306
  }
307
+ _indexView(key, baseOff, size) {
308
+ if (key >= size || key < 0n) {
309
+ return new value_1.DecodingFailure(`Invalid index ${key} in array of size ${size}`);
310
+ }
311
+ const newBase = baseOff + this.base;
312
+ const hs = headSize(this.type.elementT);
313
+ if (hs === undefined) {
314
+ return new value_1.DecodingFailure(`Can't compute head size of ${this.type.elementT.pp()}`);
315
+ }
316
+ const elSize = BigInt(hs);
317
+ return makeCalldataView(this.type.elementT, elSize * key, newBase);
318
+ }
275
319
  }
276
320
  exports.BaseArrayCalldataView = BaseArrayCalldataView;
277
321
  class ArrayCalldataView extends BaseArrayCalldataView {
@@ -292,6 +336,23 @@ class ArrayCalldataView extends BaseArrayCalldataView {
292
336
  }
293
337
  return this.decodeArray(baseOff, bigintSize, state);
294
338
  }
339
+ indexView(key, state) {
340
+ let baseOff = this.loc;
341
+ // Dynamic sized arrays have length at the start. Fixed sized arrays do
342
+ // not.
343
+ let size;
344
+ if (this.type.size !== undefined) {
345
+ size = this.type.size;
346
+ }
347
+ else {
348
+ size = this.decodeIntAt(baseOff, utils_1.uint256, state);
349
+ if ((0, utils_2.isFailure)(size)) {
350
+ return size;
351
+ }
352
+ baseOff += 32n;
353
+ }
354
+ return this._indexView(key, baseOff, size);
355
+ }
295
356
  }
296
357
  exports.ArrayCalldataView = ArrayCalldataView;
297
358
  /**
@@ -299,33 +360,64 @@ exports.ArrayCalldataView = ArrayCalldataView;
299
360
  */
300
361
  class ArraySliceCalldataView extends BaseArrayCalldataView {
301
362
  constructor(type, loc, len) {
363
+ // Note: The base is 0n on purpose here since this is created from stack values?
302
364
  super(type, loc, 0n);
303
365
  this.len = len;
304
366
  }
305
367
  decode(state) {
306
368
  return this.decodeArray(this.loc, this.len, state);
307
369
  }
370
+ indexView(key) {
371
+ return this._indexView(key, this.loc, this.len);
372
+ }
308
373
  }
309
374
  exports.ArraySliceCalldataView = ArraySliceCalldataView;
310
375
  class StructCalldataView extends BaseCalldataView {
311
376
  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);
377
+ // A StructCalldataView should be wrapped in a PointerCalldataView. So translating
378
+ // the base should be handled by PointerCalldataView.decode
379
+ const values = this.decodeTupleAt(this.loc, this.base, new solc_typed_ast_1.TupleType(this.type.fields.map(([, type]) => type)), state);
314
380
  return new value_1.Struct((0, utils_1.zip)(this.type.fields.map(([name]) => name), values));
315
381
  }
382
+ fieldView(name) {
383
+ let base = this.base;
384
+ let loc = this.loc;
385
+ if (isTypeDynamic(this.type)) {
386
+ base = loc + this.base;
387
+ loc = 0n;
388
+ }
389
+ for (const [fieldName, fieldType] of this.type.fields) {
390
+ if (name === fieldName) {
391
+ return makeCalldataView(fieldType, loc, base);
392
+ }
393
+ const tSize = headSize(fieldType);
394
+ if (tSize === undefined) {
395
+ return new value_1.DecodingFailure(`Couldn't compute head size for field ${fieldName} in ${this.type.name}`);
396
+ }
397
+ loc += BigInt(tSize);
398
+ }
399
+ return new value_1.DecodingFailure(`No field ${name} on type ${this.type.pp()}`);
400
+ }
316
401
  }
317
402
  exports.StructCalldataView = StructCalldataView;
318
403
  class PointerCalldataView extends BaseCalldataView {
319
404
  decode(state) {
405
+ const innerView = this.toView(state);
406
+ if ((0, utils_2.isFailure)(innerView)) {
407
+ return innerView;
408
+ }
409
+ return innerView.decode(state);
410
+ }
411
+ toView(state) {
320
412
  let off = this.loc;
321
413
  if (isTypeDynamic(this.type.to)) {
322
414
  off = this.decodeIntAt(off, utils_1.uint256, state);
323
415
  if ((0, utils_2.isFailure)(off)) {
324
416
  return off;
325
417
  }
418
+ return makeCalldataView(this.type.to, 0n, this.base + off);
326
419
  }
327
- const innerView = makeCalldataView(this.type.to, off, this.base);
328
- return innerView.decode(state);
420
+ return makeCalldataView(this.type.to, off, this.base);
329
421
  }
330
422
  }
331
423
  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,5 @@ export * from "./memory";
4
4
  export * from "./stack";
5
5
  export * from "./storage";
6
6
  export * from "./exp_types";
7
+ export * from "./value";
7
8
  //# 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"}
@@ -20,4 +20,5 @@ __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);
23
24
  //# 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"}
@@ -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,6 +1,6 @@
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 { IndexableView, 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";
@@ -26,37 +26,52 @@ export declare class BoolMemView extends BaseMemoryView<boolean, BoolType> {
26
26
  decode(state: Memory): boolean | DecodingFailure;
27
27
  encode(value: boolean, state: Memory): void;
28
28
  }
29
- export declare class FixedBytesMemView extends BaseMemoryView<Uint8Array, FixedBytesType> {
29
+ /**
30
+ * We need a special SingleByteMemView for FixedBytesMemView's indexView() method.
31
+ * We cannot just re-use FixedBytesMemView, since even for a single byte, that will
32
+ * write 32 bytes with padded zeroes.
33
+ */
34
+ export declare class SingleByteMemView extends BaseMemoryView<number, FixedBytesType> {
35
+ constructor(loc: bigint);
36
+ decode(state: Memory): number | DecodingFailure;
37
+ encode(value: number, state: Memory): void;
38
+ }
39
+ export declare class FixedBytesMemView extends BaseMemoryView<Uint8Array, FixedBytesType> implements IndexableView<bigint, Memory, SingleByteMemView> {
30
40
  decode(state: Memory): Uint8Array | DecodingFailure;
31
41
  encode(value: Uint8Array<ArrayBufferLike>, state: Memory): void;
42
+ indexView(key: bigint): DecodingFailure | SingleByteMemView;
32
43
  }
33
44
  export declare abstract class PackedArrayMemView<V extends Value, T extends TypeNode> extends BaseMemoryView<V, T> {
34
45
  protected decodeBytesAt(loc: bigint, state: Memory): Uint8Array | DecodingFailure;
35
46
  protected encodeBytesAt(value: Uint8Array, off: bigint, state: Memory): void;
36
47
  }
37
- export declare class BytesMemView extends PackedArrayMemView<Uint8Array, BytesType> {
48
+ export declare class BytesMemView extends PackedArrayMemView<Uint8Array, BytesType> implements IndexableView<bigint, Memory, SingleByteMemView> {
38
49
  decode(state: Memory): Uint8Array | DecodingFailure;
39
50
  encode(value: Uint8Array, state: Memory): void;
51
+ indexView(key: bigint, state: Memory): DecodingFailure | SingleByteMemView;
40
52
  }
41
53
  export declare class StringMemView extends PackedArrayMemView<string, StringType> {
42
54
  decode(state: Memory): string | DecodingFailure;
43
55
  encode(value: string, state: Memory): void;
44
56
  }
45
- export declare class ArrayMemView extends BaseMemoryView<Value[], ArrayType> {
57
+ export declare class ArrayMemView extends BaseMemoryView<Value[], ArrayType> implements IndexableView<bigint, Memory, BaseMemoryView<Value, TypeNode>> {
46
58
  decode(state: Memory): Value[] | DecodingFailure;
47
59
  encode(value: Value[], state: Memory, alloc: Allocator): void;
60
+ indexView(key: bigint, state: Memory): BaseMemoryView<Value, TypeNode> | DecodingFailure;
48
61
  }
49
- export declare class StructMemView extends BaseMemoryView<Struct, ExpStructType> {
62
+ export declare class StructMemView extends BaseMemoryView<Struct, ExpStructType> implements StructView<Memory, BaseMemoryView<Value, TypeNode>> {
50
63
  decode(state: Memory): Struct;
51
64
  encode(value: Struct, state: Memory, alloc: Allocator): void;
65
+ fieldView(name: string): BaseMemoryView<Value, TypeNode> | DecodingFailure;
52
66
  }
53
- export declare class PointerMemView extends BaseMemoryView<Value, PointerType> {
67
+ export declare class PointerMemView extends BaseMemoryView<Value, PointerType> implements PointerView<Memory, BaseMemoryView<Value, TypeNode>> {
54
68
  decode(state: Memory): Value | DecodingFailure;
55
69
  /**
56
70
  * Helper to compute how much memory we need to allocate for a pointed-to value of type t
57
71
  */
58
72
  static allocSize(v: Value | undefined, t: TypeNode): number;
59
73
  encode(value: Value, state: Memory, alloc: Allocator): void;
74
+ toView(state: Memory): BaseMemoryView<Value, TypeNode> | DecodingFailure;
60
75
  }
61
76
  export declare class MissingMemView extends BaseMemoryView<Value, MissingType> {
62
77
  decode(): DecodingFailure;
@@ -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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"}