@typemove/move 2.0.4 → 2.0.5
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.
|
@@ -17,6 +17,8 @@ export declare abstract class AbstractCodegen<ModuleTypes, StructType> {
|
|
|
17
17
|
STRUCT_FIELD_NAME: string;
|
|
18
18
|
PAYLOAD_OPTIONAL: boolean;
|
|
19
19
|
SYSTEM_MODULES: Set<string>;
|
|
20
|
+
protected currentModule?: InternalMoveModule;
|
|
21
|
+
protected currentModuleSelfShadowed: boolean;
|
|
20
22
|
chainAdapter: ChainAdapter<ModuleTypes, StructType>;
|
|
21
23
|
protected constructor(chainAdapter: ChainAdapter<ModuleTypes, StructType>);
|
|
22
24
|
readModulesFile(fullPath: string): any;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abstract-codegen.d.ts","sourceRoot":"","sources":["../../../src/codegen/abstract-codegen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAGtH,OAAO,EAA4B,eAAe,EAAE,MAAM,eAAe,CAAA;AAGzE,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAElD,UAAU,UAAU;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,UAAU,MAAM;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;CAElB;AAED,8BAAsB,eAAe,CAAC,WAAW,EAAE,UAAU;IAI3D,YAAY,EAAG,MAAM,CAAA;IACrB,cAAc,EAAG,MAAM,CAAA;IACvB,MAAM,EAAG,MAAM,CAAA;IACf,iBAAiB,EAAE,MAAM,CAAS;IAClC,gBAAgB,UAAQ;IACxB,cAAc,cAAwC;
|
|
1
|
+
{"version":3,"file":"abstract-codegen.d.ts","sourceRoot":"","sources":["../../../src/codegen/abstract-codegen.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,6 +13,15 @@ export class AbstractCodegen {
|
|
|
13
13
|
STRUCT_FIELD_NAME = 'data';
|
|
14
14
|
PAYLOAD_OPTIONAL = false;
|
|
15
15
|
SYSTEM_MODULES = new Set(['0x1', '0x2', '0x3', '0x4']);
|
|
16
|
+
// The module currently being generated by generateModule(). Generation is
|
|
17
|
+
// fully synchronous and processes one module at a time, so an instance field
|
|
18
|
+
// is safe. Used by generateSimpleType() to drop the module-name qualifier
|
|
19
|
+
// from same-module references (see there for why).
|
|
20
|
+
currentModule;
|
|
21
|
+
// True when the current module declares a struct/enum whose name equals the
|
|
22
|
+
// module name. Such a member shadows the enclosing `namespace <module>`, so
|
|
23
|
+
// same-module `<module>.<x>` references must be emitted unqualified.
|
|
24
|
+
currentModuleSelfShadowed = false;
|
|
16
25
|
chainAdapter;
|
|
17
26
|
constructor(chainAdapter) {
|
|
18
27
|
this.chainAdapter = chainAdapter;
|
|
@@ -112,6 +121,11 @@ export class AbstractCodegen {
|
|
|
112
121
|
generateModule(module, allEventStructs, addressOverride
|
|
113
122
|
// network: NetworkType
|
|
114
123
|
) {
|
|
124
|
+
this.currentModule = module;
|
|
125
|
+
const moduleJSName = normalizeToJSName(module.name);
|
|
126
|
+
this.currentModuleSelfShadowed =
|
|
127
|
+
module.structs.some((s) => normalizeToJSName(s.name) === moduleJSName) ||
|
|
128
|
+
module.enums.some((e) => normalizeToJSName(e.name) === moduleJSName);
|
|
115
129
|
const qname = moduleQname(module);
|
|
116
130
|
const eventStructs = new Map();
|
|
117
131
|
for (const [type, struct] of allEventStructs.entries()) {
|
|
@@ -359,6 +373,21 @@ export class AbstractCodegen {
|
|
|
359
373
|
return parts[0];
|
|
360
374
|
}
|
|
361
375
|
if (parts[0] === currentAddress) {
|
|
376
|
+
// Same address. References to the module currently being generated are
|
|
377
|
+
// emitted inside `namespace <module>`. When that module also declares a
|
|
378
|
+
// struct/enum sharing its name, the leading `<module>` qualifier resolves
|
|
379
|
+
// to that member (it shadows the enclosing namespace), so every
|
|
380
|
+
// `<module>.<x>` same-module reference fails with TS2694. In that case
|
|
381
|
+
// drop the module segment and reference the member unqualified. Sibling
|
|
382
|
+
// modules in the same file are unaffected and keep the qualifier.
|
|
383
|
+
if (this.currentModuleSelfShadowed &&
|
|
384
|
+
this.currentModule &&
|
|
385
|
+
parts[1] === normalizeToJSName(this.currentModule.name)) {
|
|
386
|
+
const local = parts.slice(2).join('.');
|
|
387
|
+
if (local.length > 0) {
|
|
388
|
+
return local;
|
|
389
|
+
}
|
|
390
|
+
}
|
|
362
391
|
return parts.slice(1).join('.');
|
|
363
392
|
}
|
|
364
393
|
return '_' + parts.join('.');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abstract-codegen.js","sourceRoot":"","sources":["../../../src/codegen/abstract-codegen.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"abstract-codegen.js","sourceRoot":"","sources":["../../../src/codegen/abstract-codegen.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -29,6 +29,16 @@ export abstract class AbstractCodegen<ModuleTypes, StructType> {
|
|
|
29
29
|
PAYLOAD_OPTIONAL = false
|
|
30
30
|
SYSTEM_MODULES = new Set(['0x1', '0x2', '0x3', '0x4'])
|
|
31
31
|
|
|
32
|
+
// The module currently being generated by generateModule(). Generation is
|
|
33
|
+
// fully synchronous and processes one module at a time, so an instance field
|
|
34
|
+
// is safe. Used by generateSimpleType() to drop the module-name qualifier
|
|
35
|
+
// from same-module references (see there for why).
|
|
36
|
+
protected currentModule?: InternalMoveModule
|
|
37
|
+
// True when the current module declares a struct/enum whose name equals the
|
|
38
|
+
// module name. Such a member shadows the enclosing `namespace <module>`, so
|
|
39
|
+
// same-module `<module>.<x>` references must be emitted unqualified.
|
|
40
|
+
protected currentModuleSelfShadowed = false
|
|
41
|
+
|
|
32
42
|
chainAdapter: ChainAdapter<ModuleTypes, StructType>
|
|
33
43
|
|
|
34
44
|
protected constructor(chainAdapter: ChainAdapter<ModuleTypes, StructType>) {
|
|
@@ -173,6 +183,11 @@ export abstract class AbstractCodegen<ModuleTypes, StructType> {
|
|
|
173
183
|
addressOverride?: string
|
|
174
184
|
// network: NetworkType
|
|
175
185
|
) {
|
|
186
|
+
this.currentModule = module
|
|
187
|
+
const moduleJSName = normalizeToJSName(module.name)
|
|
188
|
+
this.currentModuleSelfShadowed =
|
|
189
|
+
module.structs.some((s) => normalizeToJSName(s.name) === moduleJSName) ||
|
|
190
|
+
module.enums.some((e) => normalizeToJSName(e.name) === moduleJSName)
|
|
176
191
|
const qname = moduleQname(module)
|
|
177
192
|
const eventStructs = new Map<string, InternalMoveStruct>()
|
|
178
193
|
for (const [type, struct] of allEventStructs.entries()) {
|
|
@@ -450,6 +465,23 @@ export abstract class AbstractCodegen<ModuleTypes, StructType> {
|
|
|
450
465
|
return parts[0]
|
|
451
466
|
}
|
|
452
467
|
if (parts[0] === currentAddress) {
|
|
468
|
+
// Same address. References to the module currently being generated are
|
|
469
|
+
// emitted inside `namespace <module>`. When that module also declares a
|
|
470
|
+
// struct/enum sharing its name, the leading `<module>` qualifier resolves
|
|
471
|
+
// to that member (it shadows the enclosing namespace), so every
|
|
472
|
+
// `<module>.<x>` same-module reference fails with TS2694. In that case
|
|
473
|
+
// drop the module segment and reference the member unqualified. Sibling
|
|
474
|
+
// modules in the same file are unaffected and keep the qualifier.
|
|
475
|
+
if (
|
|
476
|
+
this.currentModuleSelfShadowed &&
|
|
477
|
+
this.currentModule &&
|
|
478
|
+
parts[1] === normalizeToJSName(this.currentModule.name)
|
|
479
|
+
) {
|
|
480
|
+
const local = parts.slice(2).join('.')
|
|
481
|
+
if (local.length > 0) {
|
|
482
|
+
return local
|
|
483
|
+
}
|
|
484
|
+
}
|
|
453
485
|
return parts.slice(1).join('.')
|
|
454
486
|
}
|
|
455
487
|
return '_' + parts.join('.')
|