sol-dbg 0.8.6 → 0.8.7
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/decoding/utils.d.ts +4 -1
- package/dist/debug/decoding/utils.d.ts.map +1 -1
- package/dist/debug/decoding/utils.js +17 -0
- package/dist/debug/decoding/utils.js.map +1 -1
- package/dist/debug/runtime_types/ast/struct_type.d.ts +2 -0
- package/dist/debug/runtime_types/ast/struct_type.d.ts.map +1 -1
- package/dist/debug/runtime_types/ast/struct_type.js +7 -0
- package/dist/debug/runtime_types/ast/struct_type.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { DecodingFailure, Value } from "./value";
|
|
2
|
-
import { PointerView, View } from "./view";
|
|
2
|
+
import { ArrayLikeView, IndexableView, PointerView, StateArea, StructView, View } from "./view";
|
|
3
3
|
import { BaseRuntimeType } from "../runtime_types";
|
|
4
4
|
import * as sol from "solc-typed-ast";
|
|
5
5
|
import * as rtt from "../runtime_types/ast";
|
|
@@ -19,6 +19,9 @@ export declare function isTypeStringMapping(t: string): boolean;
|
|
|
19
19
|
export declare function isTypeStringStruct(t: string): boolean;
|
|
20
20
|
export declare function isTypeStringStatic32BytesInStorage(t: string): boolean;
|
|
21
21
|
export declare function isPointerView(v: any): v is PointerView<any, View>;
|
|
22
|
+
export declare function isArrayLikeView(v: any): v is ArrayLikeView<any, View>;
|
|
23
|
+
export declare function isStructView(v: any): v is StructView<any, View>;
|
|
24
|
+
export declare function isIndexableView(v: any): v is IndexableView<any, StateArea, View>;
|
|
22
25
|
/**
|
|
23
26
|
* Given a `ContractDefinition` try and compute an `ExpStructType` struct that
|
|
24
27
|
* describes the layout of the class. This takes into account all base classes,
|
|
@@ -1 +1 @@
|
|
|
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;
|
|
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,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAUhG,OAAO,EAGH,eAAe,EAIlB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AACtC,OAAO,KAAK,GAAG,MAAM,sBAAsB,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAG5D,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;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,CAErE;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAM/D;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,aAAa,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,CAOhF;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;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,UAAU,GAAG,OAAO,CAc7F"}
|
|
@@ -41,6 +41,9 @@ exports.isTypeStringMapping = isTypeStringMapping;
|
|
|
41
41
|
exports.isTypeStringStruct = isTypeStringStruct;
|
|
42
42
|
exports.isTypeStringStatic32BytesInStorage = isTypeStringStatic32BytesInStorage;
|
|
43
43
|
exports.isPointerView = isPointerView;
|
|
44
|
+
exports.isArrayLikeView = isArrayLikeView;
|
|
45
|
+
exports.isStructView = isStructView;
|
|
46
|
+
exports.isIndexableView = isIndexableView;
|
|
44
47
|
exports.getContractLayoutType = getContractLayoutType;
|
|
45
48
|
exports.decodeLinkMap = decodeLinkMap;
|
|
46
49
|
const solc_typed_ast_1 = require("solc-typed-ast");
|
|
@@ -92,6 +95,20 @@ function isPointerView(v) {
|
|
|
92
95
|
v instanceof storage_1.PointerStorageView ||
|
|
93
96
|
v instanceof stack_1.PointerStackView);
|
|
94
97
|
}
|
|
98
|
+
function isArrayLikeView(v) {
|
|
99
|
+
return (0, memory_1.isArrayLikeMemView)(v) || (0, calldata_1.isArrayLikeCalldataView)(v) || (0, storage_1.isArrayLikeStorageView)(v);
|
|
100
|
+
}
|
|
101
|
+
function isStructView(v) {
|
|
102
|
+
return (v instanceof memory_1.StructMemView ||
|
|
103
|
+
v instanceof calldata_1.StructCalldataView ||
|
|
104
|
+
v instanceof storage_1.StructStorageView);
|
|
105
|
+
}
|
|
106
|
+
function isIndexableView(v) {
|
|
107
|
+
return ((0, memory_1.isArrayLikeMemView)(v) ||
|
|
108
|
+
(0, calldata_1.isArrayLikeCalldataView)(v) ||
|
|
109
|
+
(0, storage_1.isArrayLikeStorageView)(v) ||
|
|
110
|
+
v instanceof storage_1.MapStorageView);
|
|
111
|
+
}
|
|
95
112
|
/**
|
|
96
113
|
* Helper for converting `VariableDeclartaion`s to `TypeNode`s. In some cases when solc-typed-ast conversion fails,
|
|
97
114
|
* it can try and guess the correct simplified type from the typeString
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/debug/decoding/utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/debug/decoding/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,9 @@ import { BaseRuntimeType } from "./base_type";
|
|
|
2
2
|
export declare class StructType extends BaseRuntimeType {
|
|
3
3
|
readonly name: string;
|
|
4
4
|
readonly fields: Array<[string, BaseRuntimeType]>;
|
|
5
|
+
filedM: Map<string, BaseRuntimeType>;
|
|
5
6
|
constructor(name: string, fields: Array<[string, BaseRuntimeType]>);
|
|
6
7
|
pp(): string;
|
|
8
|
+
field(name: string): BaseRuntimeType;
|
|
7
9
|
}
|
|
8
10
|
//# sourceMappingURL=struct_type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"struct_type.d.ts","sourceRoot":"","sources":["../../../../src/debug/runtime_types/ast/struct_type.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"struct_type.d.ts","sourceRoot":"","sources":["../../../../src/debug/runtime_types/ast/struct_type.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,qBAAa,UAAW,SAAQ,eAAe;aAIvB,IAAI,EAAE,MAAM;aACZ,MAAM,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAJ5D,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;gBAGjB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAM5D,EAAE,IAAI,MAAM;IAIZ,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe;CAKvC"}
|
|
@@ -1,16 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.StructType = void 0;
|
|
4
|
+
const solc_typed_ast_1 = require("solc-typed-ast");
|
|
4
5
|
const base_type_1 = require("./base_type");
|
|
5
6
|
class StructType extends base_type_1.BaseRuntimeType {
|
|
6
7
|
constructor(name, fields) {
|
|
7
8
|
super();
|
|
8
9
|
this.name = name;
|
|
9
10
|
this.fields = fields;
|
|
11
|
+
this.filedM = new Map(fields);
|
|
10
12
|
}
|
|
11
13
|
pp() {
|
|
12
14
|
return `struct ${this.name} {${this.fields.map(([name, type]) => `${name}: ${type.pp()}`).join(";\n")}}`;
|
|
13
15
|
}
|
|
16
|
+
field(name) {
|
|
17
|
+
const res = this.filedM.get(name);
|
|
18
|
+
(0, solc_typed_ast_1.assert)(res !== undefined, `Unknown field ${name}`);
|
|
19
|
+
return res;
|
|
20
|
+
}
|
|
14
21
|
}
|
|
15
22
|
exports.StructType = StructType;
|
|
16
23
|
//# sourceMappingURL=struct_type.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"struct_type.js","sourceRoot":"","sources":["../../../../src/debug/runtime_types/ast/struct_type.ts"],"names":[],"mappings":";;;AAAA,2CAA8C;AAE9C,MAAa,UAAW,SAAQ,2BAAe;
|
|
1
|
+
{"version":3,"file":"struct_type.js","sourceRoot":"","sources":["../../../../src/debug/runtime_types/ast/struct_type.ts"],"names":[],"mappings":";;;AAAA,mDAAwC;AACxC,2CAA8C;AAE9C,MAAa,UAAW,SAAQ,2BAAe;IAG3C,YACoB,IAAY,EACZ,MAAwC;QAExD,KAAK,EAAE,CAAC;QAHQ,SAAI,GAAJ,IAAI,CAAQ;QACZ,WAAM,GAAN,MAAM,CAAkC;QAGxD,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IAED,EAAE;QACE,OAAO,UAAU,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,KAAK,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;IAC7G,CAAC;IAED,KAAK,CAAC,IAAY;QACd,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClC,IAAA,uBAAM,EAAC,GAAG,KAAK,SAAS,EAAE,iBAAiB,IAAI,EAAE,CAAC,CAAC;QACnD,OAAO,GAAG,CAAC;IACf,CAAC;CACJ;AApBD,gCAoBC"}
|