sol-dbg 0.0.2 → 0.0.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 (42) hide show
  1. package/README.md +3 -0
  2. package/dist/debug/abi.d.ts +3 -3
  3. package/dist/debug/abi.d.ts.map +1 -1
  4. package/dist/debug/abi.js +14 -12
  5. package/dist/debug/abi.js.map +1 -1
  6. package/dist/debug/artifact_manager.d.ts +10 -1
  7. package/dist/debug/artifact_manager.d.ts.map +1 -1
  8. package/dist/debug/artifact_manager.js +23 -3
  9. package/dist/debug/artifact_manager.js.map +1 -1
  10. package/dist/debug/decoding/calldata.d.ts +4 -3
  11. package/dist/debug/decoding/calldata.d.ts.map +1 -1
  12. package/dist/debug/decoding/calldata.js +55 -15
  13. package/dist/debug/decoding/calldata.js.map +1 -1
  14. package/dist/debug/decoding/general.d.ts +2 -2
  15. package/dist/debug/decoding/general.d.ts.map +1 -1
  16. package/dist/debug/decoding/general.js +11 -12
  17. package/dist/debug/decoding/general.js.map +1 -1
  18. package/dist/debug/decoding/memory.d.ts +2 -2
  19. package/dist/debug/decoding/memory.d.ts.map +1 -1
  20. package/dist/debug/decoding/memory.js +17 -16
  21. package/dist/debug/decoding/memory.js.map +1 -1
  22. package/dist/debug/decoding/stack.d.ts +2 -2
  23. package/dist/debug/decoding/stack.d.ts.map +1 -1
  24. package/dist/debug/decoding/stack.js +3 -3
  25. package/dist/debug/decoding/stack.js.map +1 -1
  26. package/dist/debug/decoding/storage.d.ts +2 -2
  27. package/dist/debug/decoding/storage.d.ts.map +1 -1
  28. package/dist/debug/decoding/storage.js +22 -22
  29. package/dist/debug/decoding/storage.js.map +1 -1
  30. package/dist/debug/sol_debugger.d.ts +1 -1
  31. package/dist/debug/sol_debugger.d.ts.map +1 -1
  32. package/dist/debug/sol_debugger.js +10 -7
  33. package/dist/debug/sol_debugger.js.map +1 -1
  34. package/dist/utils/misc.d.ts +2 -3
  35. package/dist/utils/misc.d.ts.map +1 -1
  36. package/dist/utils/misc.js +2 -3
  37. package/dist/utils/misc.js.map +1 -1
  38. package/dist/utils/srcmap.d.ts +1 -0
  39. package/dist/utils/srcmap.d.ts.map +1 -1
  40. package/dist/utils/srcmap.js +61 -1
  41. package/dist/utils/srcmap.js.map +1 -1
  42. package/package.json +14 -20
@@ -1 +1 @@
1
- {"version":3,"file":"general.js","sourceRoot":"","sources":["../../../src/debug/decoding/general.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"general.js","sourceRoot":"","sources":["../../../src/debug/decoding/general.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { TypeNode } from "solc-typed-ast";
1
+ import { InferType, TypeNode } from "solc-typed-ast";
2
2
  import { LinearMemoryLocation, Memory } from "..";
3
- export declare function mem_decodeValue(typ: TypeNode, loc: LinearMemoryLocation, memory: Memory): undefined | [any, number];
3
+ export declare function mem_decodeValue(typ: TypeNode, loc: LinearMemoryLocation, memory: Memory, infer: InferType): undefined | [any, number];
4
4
  //# sourceMappingURL=memory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../src/debug/decoding/memory.ts"],"names":[],"mappings":"AACA,OAAO,EAmBH,QAAQ,EAGX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAkC,oBAAoB,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC;AAqRlF,wBAAgB,eAAe,CAC3B,GAAG,EAAE,QAAQ,EACb,GAAG,EAAE,oBAAoB,EACzB,MAAM,EAAE,MAAM,GACf,SAAS,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CA+D3B"}
1
+ {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../src/debug/decoding/memory.ts"],"names":[],"mappings":"AACA,OAAO,EAWH,SAAS,EAQT,QAAQ,EAGX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAkC,oBAAoB,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC;AAqSlF,wBAAgB,eAAe,CAC3B,GAAG,EAAE,QAAQ,EACb,GAAG,EAAE,oBAAoB,EACzB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,SAAS,GACjB,SAAS,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CA+D3B"}
@@ -79,7 +79,7 @@ function mem_decodeString(loc, memory) {
79
79
  const str = bytes[0].toString("utf-8");
80
80
  return [str, bytes[1]];
81
81
  }
82
- function mem_decodeArray(typ, loc, memory) {
82
+ function mem_decodeArray(typ, loc, memory, infer) {
83
83
  let arrOffset = loc.address;
84
84
  let arrBytesSize = 0;
85
85
  let numLen;
@@ -103,7 +103,7 @@ function mem_decodeArray(typ, loc, memory) {
103
103
  }
104
104
  const res = [];
105
105
  for (let i = 0; i < numLen; i++) {
106
- const elementTuple = mem_decodeValue(typ.elementT, { kind: loc.kind, address: arrOffset }, memory);
106
+ const elementTuple = mem_decodeValue(typ.elementT, { kind: loc.kind, address: arrOffset }, memory, infer);
107
107
  if (elementTuple === undefined) {
108
108
  return undefined;
109
109
  }
@@ -114,12 +114,13 @@ function mem_decodeArray(typ, loc, memory) {
114
114
  }
115
115
  return [res, arrBytesSize];
116
116
  }
117
- function mem_decodeTuple(typ, loc, memory) {
117
+ function mem_decodeTuple(typ, loc, memory, infer) {
118
118
  let tupleOffset = loc.address;
119
119
  let size = 0;
120
120
  const res = [];
121
121
  for (const field of typ.elements) {
122
- const decodeRes = mem_decodeValue(field, { kind: loc.kind, address: tupleOffset }, memory);
122
+ (0, solc_typed_ast_1.assert)(field !== null, ``);
123
+ const decodeRes = mem_decodeValue(field, { kind: loc.kind, address: tupleOffset }, memory, infer);
123
124
  if (decodeRes === undefined) {
124
125
  return undefined;
125
126
  }
@@ -130,14 +131,14 @@ function mem_decodeTuple(typ, loc, memory) {
130
131
  }
131
132
  return [res, size];
132
133
  }
133
- function mem_decodeStruct(def, loc, memory) {
134
+ function mem_decodeStruct(def, loc, memory, infer) {
134
135
  const res = {};
135
136
  let size = 0;
136
137
  let offset = loc.address;
137
138
  for (let i = 0; i < def.vMembers.length; i++) {
138
139
  const field = def.vMembers[i];
139
- const fieldT = (0, solc_typed_ast_1.specializeType)((0, solc_typed_ast_1.typeNameToTypeNode)(field.vType), solc_typed_ast_1.DataLocation.Memory);
140
- const fieldRes = mem_decodeValue(fieldT, { kind: loc.kind, address: offset }, memory);
140
+ const fieldT = (0, solc_typed_ast_1.specializeType)(infer.typeNameToTypeNode(field.vType), solc_typed_ast_1.DataLocation.Memory);
141
+ const fieldRes = mem_decodeValue(fieldT, { kind: loc.kind, address: offset }, memory, infer);
141
142
  if (fieldRes === undefined) {
142
143
  return undefined;
143
144
  }
@@ -147,7 +148,7 @@ function mem_decodeStruct(def, loc, memory) {
147
148
  }
148
149
  return [res, size];
149
150
  }
150
- function mem_decodePointer(typ, loc, memory) {
151
+ function mem_decodePointer(typ, loc, memory, infer) {
151
152
  (0, solc_typed_ast_1.assert)(typ.location === solc_typed_ast_1.DataLocation.Memory, `Unexpected pointer to ${typ.location} in memory`);
152
153
  const offRes = mem_decodeInt(__2.uint256, loc, memory);
153
154
  if (offRes === undefined) {
@@ -158,13 +159,13 @@ function mem_decodePointer(typ, loc, memory) {
158
159
  kind: __1.DataLocationKind.Memory,
159
160
  address: offRes[0]
160
161
  };
161
- const pointedToValue = mem_decodeValue(typ.to, pointedToLoc, memory);
162
+ const pointedToValue = mem_decodeValue(typ.to, pointedToLoc, memory, infer);
162
163
  if (pointedToValue === undefined) {
163
164
  return undefined;
164
165
  }
165
166
  return [pointedToValue[0], size];
166
167
  }
167
- function mem_decodeValue(typ, loc, memory) {
168
+ function mem_decodeValue(typ, loc, memory, infer) {
168
169
  //console.error(`mem_decodeValue(${typ.pp()}, ${ppLoc(loc)})`);
169
170
  if (typ instanceof solc_typed_ast_1.IntType) {
170
171
  return mem_decodeInt(typ, loc, memory);
@@ -187,16 +188,16 @@ function mem_decodeValue(typ, loc, memory) {
187
188
  return mem_decodeAddress(loc, memory);
188
189
  }
189
190
  if (def instanceof solc_typed_ast_1.UserDefinedValueTypeDefinition) {
190
- const underlyingType = (0, solc_typed_ast_1.typeNameToTypeNode)(def.underlyingType);
191
- return mem_decodeValue(underlyingType, loc, memory);
191
+ const underlyingType = infer.typeNameToTypeNode(def.underlyingType);
192
+ return mem_decodeValue(underlyingType, loc, memory, infer);
192
193
  }
193
194
  if (def instanceof solc_typed_ast_1.StructDefinition) {
194
- return mem_decodeStruct(def, loc, memory);
195
+ return mem_decodeStruct(def, loc, memory, infer);
195
196
  }
196
197
  throw new Error(`NYI decoding user defined type ${typ.pp()}`);
197
198
  }
198
199
  if (typ instanceof solc_typed_ast_1.ArrayType) {
199
- return mem_decodeArray(typ, loc, memory);
200
+ return mem_decodeArray(typ, loc, memory, infer);
200
201
  }
201
202
  if (typ instanceof solc_typed_ast_1.BytesType) {
202
203
  return mem_decodeBytes(loc, memory);
@@ -205,10 +206,10 @@ function mem_decodeValue(typ, loc, memory) {
205
206
  return mem_decodeString(loc, memory);
206
207
  }
207
208
  if (typ instanceof solc_typed_ast_1.TupleType) {
208
- return mem_decodeTuple(typ, loc, memory);
209
+ return mem_decodeTuple(typ, loc, memory, infer);
209
210
  }
210
211
  if (typ instanceof solc_typed_ast_1.PointerType) {
211
- return mem_decodePointer(typ, loc, memory);
212
+ return mem_decodePointer(typ, loc, memory, infer);
212
213
  }
213
214
  throw new Error(`NYI decoding ${typ.pp()}`);
214
215
  }
@@ -1 +1 @@
1
- {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../../src/debug/decoding/memory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../../src/debug/decoding/memory.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
- import { IntType, TypeNode } from "solc-typed-ast";
1
+ import { InferType, IntType, TypeNode } from "solc-typed-ast";
2
2
  import { Stack, StackLocation } from "..";
3
3
  export declare function st_decodeInt(typ: IntType, loc: StackLocation, stack: Stack): undefined | bigint;
4
4
  /**
5
5
  * Decode a single value from a stack location. All values in the stack span exactly
6
6
  * one slot (32 bytes). Returns the decoded value or undefined (if it failed decoding for some reason)
7
7
  */
8
- export declare function st_decodeValue(typ: TypeNode, loc: StackLocation, stack: Stack): any;
8
+ export declare function st_decodeValue(typ: TypeNode, loc: StackLocation, stack: Stack, infer: InferType): any;
9
9
  //# sourceMappingURL=stack.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"stack.d.ts","sourceRoot":"","sources":["../../../src/debug/decoding/stack.ts"],"names":[],"mappings":"AACA,OAAO,EAQH,OAAO,EAEP,QAAQ,EAGX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAO1C,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,GAAG,SAAS,GAAG,MAAM,CAqB/F;AA0CD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,GAAG,GAAG,CAuCnF"}
1
+ {"version":3,"file":"stack.d.ts","sourceRoot":"","sources":["../../../src/debug/decoding/stack.ts"],"names":[],"mappings":"AACA,OAAO,EAQH,SAAS,EACT,OAAO,EACP,QAAQ,EAGX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAO1C,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,GAAG,SAAS,GAAG,MAAM,CAqB/F;AA0CD;;;GAGG;AACH,wBAAgB,cAAc,CAC1B,GAAG,EAAE,QAAQ,EACb,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,SAAS,GACjB,GAAG,CAuCL"}
@@ -51,7 +51,7 @@ function st_decodeEnum(def, loc, stack) {
51
51
  * Decode a single value from a stack location. All values in the stack span exactly
52
52
  * one slot (32 bytes). Returns the decoded value or undefined (if it failed decoding for some reason)
53
53
  */
54
- function st_decodeValue(typ, loc, stack) {
54
+ function st_decodeValue(typ, loc, stack, infer) {
55
55
  //console.error(`st_decodeValue(${typ.pp()}, ${ppLoc(loc)})`);
56
56
  if (typ instanceof solc_typed_ast_1.IntType) {
57
57
  return st_decodeInt(typ, loc, stack);
@@ -74,8 +74,8 @@ function st_decodeValue(typ, loc, stack) {
74
74
  return st_decodeAddress(loc, stack);
75
75
  }
76
76
  if (def instanceof solc_typed_ast_1.UserDefinedValueTypeDefinition) {
77
- const underlyingType = (0, solc_typed_ast_1.typeNameToTypeNode)(def.underlyingType);
78
- return st_decodeValue(underlyingType, loc, stack);
77
+ const underlyingType = infer.typeNameToTypeNode(def.underlyingType);
78
+ return st_decodeValue(underlyingType, loc, stack, infer);
79
79
  }
80
80
  throw new Error(`NYI decoding user defined type ${typ.pp()} from the stack`);
81
81
  }
@@ -1 +1 @@
1
- {"version":3,"file":"stack.js","sourceRoot":"","sources":["../../../src/debug/decoding/stack.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stack.js","sourceRoot":"","sources":["../../../src/debug/decoding/stack.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { TypeNode } from "solc-typed-ast";
1
+ import { InferType, TypeNode } from "solc-typed-ast";
2
2
  import { Storage, StorageLocation } from "..";
3
- export declare function stor_decodeValue(typ: TypeNode, loc: StorageLocation, storage: Storage): undefined | [any, StorageLocation];
3
+ export declare function stor_decodeValue(typ: TypeNode, loc: StorageLocation, storage: Storage, infer: InferType): undefined | [any, StorageLocation];
4
4
  //# sourceMappingURL=storage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../src/debug/decoding/storage.ts"],"names":[],"mappings":"AACA,OAAO,EAiBH,QAAQ,EAIX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAoB,OAAO,EAAE,eAAe,EAAE,MAAM,IAAI,CAAC;AA+bhE,wBAAgB,gBAAgB,CAC5B,GAAG,EAAE,QAAQ,EACb,GAAG,EAAE,eAAe,EACpB,OAAO,EAAE,OAAO,GACjB,SAAS,GAAG,CAAC,GAAG,EAAE,eAAe,CAAC,CAsDpC"}
1
+ {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../src/debug/decoding/storage.ts"],"names":[],"mappings":"AACA,OAAO,EAWH,SAAS,EAMT,QAAQ,EAGX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAoB,OAAO,EAAE,eAAe,EAAE,MAAM,IAAI,CAAC;AAqchE,wBAAgB,gBAAgB,CAC5B,GAAG,EAAE,QAAQ,EACb,GAAG,EAAE,eAAe,EACpB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,SAAS,GACjB,SAAS,GAAG,CAAC,GAAG,EAAE,eAAe,CAAC,CAsDpC"}
@@ -109,7 +109,7 @@ function stor_decodeAddress(loc, storage) {
109
109
  /**
110
110
  * Compute the 'static' size that a variable of type `typ` would take up in storage
111
111
  */
112
- function typeStaticStorSize(typ) {
112
+ function typeStaticStorSize(typ, infer) {
113
113
  if (typ instanceof solc_typed_ast_1.IntType) {
114
114
  return typ.nBits / 8;
115
115
  }
@@ -127,12 +127,12 @@ function typeStaticStorSize(typ) {
127
127
  return (0, solc_typed_ast_1.enumToIntType)(typ.definition).nBits / 8;
128
128
  }
129
129
  if (typ.definition instanceof solc_typed_ast_1.UserDefinedValueTypeDefinition) {
130
- return typeStaticStorSize((0, solc_typed_ast_1.typeNameToTypeNode)(typ.definition.underlyingType));
130
+ return typeStaticStorSize(infer.typeNameToTypeNode(typ.definition.underlyingType), infer);
131
131
  }
132
132
  }
133
133
  throw new Error(`NYI typStaticStorSize(${typ.pp()})`);
134
134
  }
135
- function typeFitsInLoc(typ, loc) {
135
+ function typeFitsInLoc(typ, loc, infer) {
136
136
  if (typ instanceof solc_typed_ast_1.PointerType) {
137
137
  if (typ.to instanceof solc_typed_ast_1.ArrayType ||
138
138
  typ.to instanceof solc_typed_ast_1.BytesType ||
@@ -143,7 +143,7 @@ function typeFitsInLoc(typ, loc) {
143
143
  }
144
144
  throw new Error(`NYI firstLocationOfTypeAfter(${typ.pp()},...)`);
145
145
  }
146
- const size = typeStaticStorSize(typ);
146
+ const size = typeStaticStorSize(typ, infer);
147
147
  (0, solc_typed_ast_1.assert)(size <= 32, `Unexpected type ${typ.pp()} spanning more than a single word`);
148
148
  return size <= loc.endOffsetInWord;
149
149
  }
@@ -154,8 +154,8 @@ function nextWord(loc) {
154
154
  address: loc.address + BigInt(1)
155
155
  };
156
156
  }
157
- function roundLocToType(loc, typ) {
158
- if (typeFitsInLoc(typ, loc)) {
157
+ function roundLocToType(loc, typ, infer) {
158
+ if (typeFitsInLoc(typ, loc, infer)) {
159
159
  return loc;
160
160
  }
161
161
  return nextWord(loc);
@@ -165,7 +165,7 @@ function roundLocToType(loc, typ) {
165
165
  * Returns undefined when it fails decoding, otherwise a pair `[any, number]`
166
166
  * containing an object with the decoded fields and its size in bytes in storage.
167
167
  */
168
- function stor_decodeStruct(typ, loc, storage) {
168
+ function stor_decodeStruct(typ, loc, storage, infer) {
169
169
  const def = typ.definition;
170
170
  (0, solc_typed_ast_1.assert)(def instanceof solc_typed_ast_1.StructDefinition, `stor_decodeStruct expects a struct, not {0}`, typ);
171
171
  (0, solc_typed_ast_1.assert)(loc.endOffsetInWord === 32, `Internal Error: Location of struct of type {0} doesn't start at the end of word {1} - instead at off {2}`, typ, loc.address, loc.endOffsetInWord);
@@ -173,14 +173,14 @@ function stor_decodeStruct(typ, loc, storage) {
173
173
  for (const field of def.vMembers) {
174
174
  let fieldGenT;
175
175
  try {
176
- fieldGenT = (0, solc_typed_ast_1.variableDeclarationToTypeNode)(field);
176
+ fieldGenT = infer.variableDeclarationToTypeNode(field);
177
177
  }
178
178
  catch (e) {
179
179
  return undefined;
180
180
  }
181
181
  const fieldT = (0, __1.changeToLocation)(fieldGenT, solc_typed_ast_1.DataLocation.Storage);
182
- loc = roundLocToType(loc, fieldT);
183
- const fieldVal = stor_decodeValue(fieldT, loc, storage);
182
+ loc = roundLocToType(loc, fieldT, infer);
183
+ const fieldVal = stor_decodeValue(fieldT, loc, storage, infer);
184
184
  if (fieldVal === undefined) {
185
185
  return undefined;
186
186
  }
@@ -221,7 +221,7 @@ function stor_decodeString(loc, storage) {
221
221
  const str = res[0].toString("utf-8");
222
222
  return [str, res[1]];
223
223
  }
224
- function stor_decodeArray(typ, loc, storage) {
224
+ function stor_decodeArray(typ, loc, storage, infer) {
225
225
  let numLen;
226
226
  let contentsLoc;
227
227
  const res = [];
@@ -246,12 +246,12 @@ function stor_decodeArray(typ, loc, storage) {
246
246
  contentsLoc = loc;
247
247
  }
248
248
  for (let i = 0; i < numLen; i++) {
249
- const elRes = stor_decodeValue(typ.elementT, contentsLoc, storage);
249
+ const elRes = stor_decodeValue(typ.elementT, contentsLoc, storage, infer);
250
250
  if (elRes === undefined) {
251
251
  return undefined;
252
252
  }
253
253
  res.push(elRes[0]);
254
- contentsLoc = roundLocToType(elRes[1], typ.elementT);
254
+ contentsLoc = roundLocToType(elRes[1], typ.elementT, infer);
255
255
  }
256
256
  return [res, nextWord(loc)];
257
257
  }
@@ -270,7 +270,7 @@ function stor_decodeArray(typ, loc, storage) {
270
270
  * Otherwise 2*len+1 is stored at loc.address (TODO little endian? big endian encoded?) and the contents are at keccak256(loc.address)
271
271
  * 3. Pointer to struct - the struct fields themselves directly starts at the loc.address
272
272
  */
273
- function stor_decodePointer(typ, loc, storage) {
273
+ function stor_decodePointer(typ, loc, storage, infer) {
274
274
  if (typ.to instanceof solc_typed_ast_1.BytesType) {
275
275
  return stor_decodeBytes(loc, storage);
276
276
  }
@@ -279,15 +279,15 @@ function stor_decodePointer(typ, loc, storage) {
279
279
  }
280
280
  if (typ.to instanceof solc_typed_ast_1.UserDefinedType) {
281
281
  if (typ.to.definition instanceof solc_typed_ast_1.StructDefinition) {
282
- return stor_decodeStruct(typ.to, loc, storage);
282
+ return stor_decodeStruct(typ.to, loc, storage, infer);
283
283
  }
284
284
  }
285
285
  if (typ.to instanceof solc_typed_ast_1.ArrayType) {
286
- return stor_decodeArray(typ.to, loc, storage);
286
+ return stor_decodeArray(typ.to, loc, storage, infer);
287
287
  }
288
288
  throw new Error(`NYI stor_decodePointer(${typ.pp()},...)`);
289
289
  }
290
- function stor_decodeValue(typ, loc, storage) {
290
+ function stor_decodeValue(typ, loc, storage, infer) {
291
291
  if (typ instanceof solc_typed_ast_1.IntType) {
292
292
  return stor_decodeInt(typ, loc, storage);
293
293
  }
@@ -301,7 +301,7 @@ function stor_decodeValue(typ, loc, storage) {
301
301
  return stor_decodeAddress(loc, storage);
302
302
  }
303
303
  if (typ instanceof solc_typed_ast_1.PointerType) {
304
- return stor_decodePointer(typ, loc, storage);
304
+ return stor_decodePointer(typ, loc, storage, infer);
305
305
  }
306
306
  if (typ instanceof solc_typed_ast_1.BytesType) {
307
307
  return stor_decodeBytes(loc, storage);
@@ -310,11 +310,11 @@ function stor_decodeValue(typ, loc, storage) {
310
310
  return stor_decodeString(loc, storage);
311
311
  }
312
312
  if (typ instanceof solc_typed_ast_1.ArrayType) {
313
- return stor_decodeArray(typ, loc, storage);
313
+ return stor_decodeArray(typ, loc, storage, infer);
314
314
  }
315
315
  if (typ instanceof solc_typed_ast_1.UserDefinedType) {
316
316
  if (typ.definition instanceof solc_typed_ast_1.StructDefinition) {
317
- return stor_decodeStruct(typ, loc, storage);
317
+ return stor_decodeStruct(typ, loc, storage, infer);
318
318
  }
319
319
  if (typ.definition instanceof solc_typed_ast_1.ContractDefinition) {
320
320
  return stor_decodeAddress(loc, storage);
@@ -323,8 +323,8 @@ function stor_decodeValue(typ, loc, storage) {
323
323
  return stor_decodeEnum(typ.definition, loc, storage);
324
324
  }
325
325
  if (typ.definition instanceof solc_typed_ast_1.UserDefinedValueTypeDefinition) {
326
- const underlyingType = (0, solc_typed_ast_1.typeNameToTypeNode)(typ.definition.underlyingType);
327
- return stor_decodeValue(underlyingType, loc, storage);
326
+ const underlyingType = infer.typeNameToTypeNode(typ.definition.underlyingType);
327
+ return stor_decodeValue(underlyingType, loc, storage, infer);
328
328
  }
329
329
  }
330
330
  throw new Error(`NYI storage decode for type ${typ.pp()}`);
@@ -1 +1 @@
1
- {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/debug/decoding/storage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/debug/decoding/storage.ts"],"names":[],"mappings":"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"}
@@ -189,7 +189,7 @@ export declare function getContractInfo(arg: Frame | DbgStack): ContractInfo | u
189
189
  * All the above information is held for each step in the `DbgState` struct.
190
190
  */
191
191
  export declare class SolTxDebugger {
192
- private artifactManager;
192
+ readonly artifactManager: IArtifactManager;
193
193
  constructor(artifactManager: IArtifactManager);
194
194
  /**
195
195
  * Given the VM state of a trace step adjust the stack trace accordingly. This handles the following cases:
@@ -1 +1 @@
1
- {"version":3,"file":"sol_debugger.d.ts","sourceRoot":"","sources":["../../src/debug/sol_debugger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sol_debugger.d.ts","sourceRoot":"","sources":["../../src/debug/sol_debugger.ts"],"names":[],"mappings":"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"}
@@ -148,7 +148,8 @@ class SolTxDebugger {
148
148
  let args;
149
149
  if (ast instanceof solc_typed_ast_1.FunctionDefinition ||
150
150
  (ast instanceof solc_typed_ast_1.VariableDeclaration && ast.stateVariable)) {
151
- args = this.decodeFunArgs(ast, state.evmStack);
151
+ (0, solc_typed_ast_1.assert)(curExtFrame.info !== undefined, ``);
152
+ args = this.decodeFunArgs(ast, state.evmStack, curExtFrame.info);
152
153
  }
153
154
  const newFrame = {
154
155
  kind: FrameKind.InternalCall,
@@ -339,7 +340,8 @@ class SolTxDebugger {
339
340
  if (contractInfo && contractInfo.ast) {
340
341
  const contract = contractInfo.ast;
341
342
  const abiVersion = contractInfo.artifact.abiEncoderVersion;
342
- const matchingFuns = contract.vFunctions.filter((fun) => (0, __1.getFunctionSelector)(fun) === selector);
343
+ const infer = this.artifactManager.infer(contractInfo.artifact.compilerVersion);
344
+ const matchingFuns = contract.vFunctions.filter((fun) => (0, __1.getFunctionSelector)(fun, infer) === selector);
343
345
  if (matchingFuns.length === 1) {
344
346
  callee = matchingFuns[0];
345
347
  }
@@ -347,7 +349,7 @@ class SolTxDebugger {
347
349
  const matchingGetters = contract.vStateVariables.filter((vDef) => {
348
350
  try {
349
351
  return (vDef.visibility === solc_typed_ast_1.StateVariableVisibility.Public &&
350
- vDef.getterCanonicalSignatureHash(abiVersion) === selector);
352
+ infer.signatureHash(vDef));
351
353
  }
352
354
  catch (e) {
353
355
  return false;
@@ -359,7 +361,7 @@ class SolTxDebugger {
359
361
  }
360
362
  if (callee !== undefined) {
361
363
  try {
362
- args = (0, abi_1.decodeMsgData)(callee, data, DataLocationKind.CallData, abiVersion);
364
+ args = (0, abi_1.decodeMsgData)(callee, data, DataLocationKind.CallData, infer, abiVersion);
363
365
  }
364
366
  catch (e) {
365
367
  args = undefined;
@@ -403,17 +405,18 @@ class SolTxDebugger {
403
405
  * TODO: Rename - this function doesn't do any actual decoding - just building up DataView for the arguments
404
406
  * of a function
405
407
  */
406
- decodeFunArgs(callee, stack) {
408
+ decodeFunArgs(callee, stack, contractInfo) {
407
409
  const res = [];
408
410
  let formals;
411
+ const infer = this.artifactManager.infer(contractInfo.artifact.compilerVersion);
409
412
  try {
410
413
  formals =
411
414
  callee instanceof solc_typed_ast_1.FunctionDefinition
412
415
  ? callee.vParameters.vParameters.map((argDef) => [
413
416
  argDef.name,
414
- (0, solc_typed_ast_1.variableDeclarationToTypeNode)(argDef)
417
+ infer.variableDeclarationToTypeNode(argDef)
415
418
  ])
416
- : callee.getterArgsAndReturn()[0].map((typ, i) => [`ARG_${i}`, typ]);
419
+ : infer.getterArgsAndReturn(callee)[0].map((typ, i) => [`ARG_${i}`, typ]);
417
420
  }
418
421
  catch (e) {
419
422
  // `variableDeclarationToTypeNode` may fail when referencing structs/contracts that are defined