@azure-tools/typespec-rust 0.36.0 → 0.37.0

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 (76) hide show
  1. package/dist/src/codegen/clients.d.ts +4 -4
  2. package/dist/src/codegen/clients.d.ts.map +1 -1
  3. package/dist/src/codegen/clients.js +167 -67
  4. package/dist/src/codegen/clients.js.map +1 -1
  5. package/dist/src/codegen/codeGenerator.d.ts +6 -0
  6. package/dist/src/codegen/codeGenerator.d.ts.map +1 -1
  7. package/dist/src/codegen/codeGenerator.js +112 -32
  8. package/dist/src/codegen/codeGenerator.js.map +1 -1
  9. package/dist/src/codegen/context.d.ts +10 -0
  10. package/dist/src/codegen/context.d.ts.map +1 -1
  11. package/dist/src/codegen/context.js +57 -15
  12. package/dist/src/codegen/context.js.map +1 -1
  13. package/dist/src/codegen/docTests.d.ts +1 -2
  14. package/dist/src/codegen/docTests.d.ts.map +1 -1
  15. package/dist/src/codegen/docTests.js +13 -3
  16. package/dist/src/codegen/docTests.js.map +1 -1
  17. package/dist/src/codegen/enums.d.ts +4 -4
  18. package/dist/src/codegen/enums.d.ts.map +1 -1
  19. package/dist/src/codegen/enums.js +21 -21
  20. package/dist/src/codegen/enums.js.map +1 -1
  21. package/dist/src/codegen/headerTraits.d.ts +2 -2
  22. package/dist/src/codegen/headerTraits.d.ts.map +1 -1
  23. package/dist/src/codegen/headerTraits.js +17 -9
  24. package/dist/src/codegen/headerTraits.js.map +1 -1
  25. package/dist/src/codegen/helpers.d.ts +12 -3
  26. package/dist/src/codegen/helpers.d.ts.map +1 -1
  27. package/dist/src/codegen/helpers.js +19 -13
  28. package/dist/src/codegen/helpers.js.map +1 -1
  29. package/dist/src/codegen/lib.d.ts +3 -1
  30. package/dist/src/codegen/lib.d.ts.map +1 -1
  31. package/dist/src/codegen/lib.js +5 -1
  32. package/dist/src/codegen/lib.js.map +1 -1
  33. package/dist/src/codegen/mod.d.ts +9 -2
  34. package/dist/src/codegen/mod.d.ts.map +1 -1
  35. package/dist/src/codegen/mod.js +25 -9
  36. package/dist/src/codegen/mod.js.map +1 -1
  37. package/dist/src/codegen/models.d.ts +4 -4
  38. package/dist/src/codegen/models.d.ts.map +1 -1
  39. package/dist/src/codegen/models.js +76 -30
  40. package/dist/src/codegen/models.js.map +1 -1
  41. package/dist/src/codegen/unions.d.ts +4 -4
  42. package/dist/src/codegen/unions.d.ts.map +1 -1
  43. package/dist/src/codegen/unions.js +71 -45
  44. package/dist/src/codegen/unions.js.map +1 -1
  45. package/dist/src/codegen/use.d.ts +4 -2
  46. package/dist/src/codegen/use.d.ts.map +1 -1
  47. package/dist/src/codegen/use.js +22 -26
  48. package/dist/src/codegen/use.js.map +1 -1
  49. package/dist/src/codemodel/client.d.ts +30 -15
  50. package/dist/src/codemodel/client.d.ts.map +1 -1
  51. package/dist/src/codemodel/client.js +11 -7
  52. package/dist/src/codemodel/client.js.map +1 -1
  53. package/dist/src/codemodel/crate.d.ts +42 -12
  54. package/dist/src/codemodel/crate.d.ts.map +1 -1
  55. package/dist/src/codemodel/crate.js +21 -46
  56. package/dist/src/codemodel/crate.js.map +1 -1
  57. package/dist/src/codemodel/types.d.ts +60 -34
  58. package/dist/src/codemodel/types.d.ts.map +1 -1
  59. package/dist/src/codemodel/types.js +26 -10
  60. package/dist/src/codemodel/types.js.map +1 -1
  61. package/dist/src/emitter.d.ts.map +1 -1
  62. package/dist/src/emitter.js +40 -12
  63. package/dist/src/emitter.js.map +1 -1
  64. package/dist/src/lib.d.ts +2 -0
  65. package/dist/src/lib.d.ts.map +1 -1
  66. package/dist/src/lib.js +6 -0
  67. package/dist/src/lib.js.map +1 -1
  68. package/dist/src/tcgcadapter/adapter.d.ts +75 -13
  69. package/dist/src/tcgcadapter/adapter.d.ts.map +1 -1
  70. package/dist/src/tcgcadapter/adapter.js +655 -173
  71. package/dist/src/tcgcadapter/adapter.js.map +1 -1
  72. package/dist/src/utils/utils.d.ts +7 -4
  73. package/dist/src/utils/utils.d.ts.map +1 -1
  74. package/dist/src/utils/utils.js +25 -23
  75. package/dist/src/utils/utils.js.map +1 -1
  76. package/package.json +17 -17
@@ -1 +1 @@
1
- {"version":3,"file":"models.js","sourceRoot":"","sources":["../../../src/codegen/models.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../../../src/codegen/models.ts"],"names":[],"mappings":"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"}
@@ -12,11 +12,11 @@ export interface Unions {
12
12
  }
13
13
  /**
14
14
  * returns the union enum types, or undefined if the
15
- * crate contains no union types.
15
+ * module contains no union types.
16
16
  *
17
- * @param crate the crate for which to emit unions
18
- * @param context the context for the provided crate
17
+ * @param module the module for which to emit unions
18
+ * @param context the context for the provided module
19
19
  * @returns the union content or undefined
20
20
  */
21
- export declare function emitUnions(crate: rust.Crate, context: Context): Unions;
21
+ export declare function emitUnions(module: rust.ModuleContainer, context: Context): Unions;
22
22
  //# sourceMappingURL=unions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"unions.d.ts","sourceRoot":"","sources":["../../../src/codegen/unions.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AACxC,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAC,OAAO,EAAC,MAAM,cAAc,CAAC;AAGrC,8BAA8B;AAC9B,MAAM,WAAW,MAAM;IACrB,wBAAwB;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;IAE7B,kCAAkC;IAClC,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;IAEvB,oCAAoC;IACpC,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;CACxB;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAkEtE"}
1
+ {"version":3,"file":"unions.d.ts","sourceRoot":"","sources":["../../../src/codegen/unions.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AACxC,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAC,OAAO,EAAC,MAAM,cAAc,CAAC;AAGrC,8BAA8B;AAC9B,MAAM,WAAW,MAAM;IACrB,wBAAwB;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;IAE7B,kCAAkC;IAClC,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;IAEvB,oCAAoC;IACpC,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;CACxB;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CA4FjF"}
@@ -7,67 +7,89 @@ import * as helpers from './helpers.js';
7
7
  import * as utils from '../utils/utils.js';
8
8
  /**
9
9
  * returns the union enum types, or undefined if the
10
- * crate contains no union types.
10
+ * module contains no union types.
11
11
  *
12
- * @param crate the crate for which to emit unions
13
- * @param context the context for the provided crate
12
+ * @param module the module for which to emit unions
13
+ * @param context the context for the provided module
14
14
  * @returns the union content or undefined
15
15
  */
16
- export function emitUnions(crate, context) {
16
+ export function emitUnions(module, context) {
17
17
  var _a, _b;
18
- if (crate.unions.length === 0) {
18
+ if (module.unions.length === 0) {
19
19
  return {};
20
20
  }
21
- const use = new Use('modelsOther');
21
+ const use = new Use(module, 'modelsOther');
22
22
  const indent = new helpers.indentation();
23
23
  const visTracker = new helpers.VisibilityTracker();
24
- let body = '';
25
- for (const rustUnion of crate.unions) {
24
+ // Collect all union entries (discriminated and untagged) so they can be sorted.
25
+ const entries = [];
26
+ for (const rustUnion of module.unions) {
26
27
  visTracker.update(rustUnion.visibility);
28
+ let body = '';
27
29
  const docs = helpers.formatDocComment(rustUnion.docs, true);
28
30
  if (docs.length > 0) {
29
31
  body += `${indent.get()}#[doc = r#"${docs.substring(0, docs.length - 1)}"#]\n`;
30
32
  }
31
- const extensiblePolymorphicDU = ((_a = rustUnion.unionKind) === null || _a === void 0 ? void 0 : _a.kind) === 'discriminatedUnionBase' ? rustUnion.unionKind : undefined;
32
- if (!extensiblePolymorphicDU) {
33
- // extensible polymorphic unions define Serialize
34
- use.add('serde', 'Serialize');
35
- }
36
- use.add('serde', 'Deserialize');
37
- use.add('azure_core::fmt', 'SafeDebug');
38
- body += `#[derive(Clone, Deserialize, ${!extensiblePolymorphicDU ? 'Serialize, ' : ''}SafeDebug)]\n`;
39
- const content = ((_b = rustUnion.unionKind) === null || _b === void 0 ? void 0 : _b.kind) === 'discriminatedUnionEnvelope' ? `content = "${rustUnion.unionKind.envelopeName}"` : '';
40
- body += `#[serde(${[content, `tag = "${rustUnion.discriminant}"`].filter(x => x !== '').join(', ')})]\n`;
41
- body += `${helpers.emitVisibility(rustUnion.visibility)}enum ${rustUnion.name} {\n`;
42
- for (const member of rustUnion.members) {
43
- use.addForType(member.type);
44
- const docs = helpers.formatDocComment(member.docs, true);
45
- if (docs.length > 0) {
46
- body += `${indent.get()}#[doc = r#"${docs.substring(0, docs.length - 1)}"#]\n`;
33
+ if (rustUnion.kind === 'discriminatedUnion') {
34
+ const extensiblePolymorphicDU = ((_a = rustUnion.unionKind) === null || _a === void 0 ? void 0 : _a.kind) === 'discriminatedUnionBase' ? rustUnion.unionKind : undefined;
35
+ if (!extensiblePolymorphicDU) {
36
+ // extensible polymorphic unions define Serialize
37
+ use.add('serde', 'Serialize');
38
+ }
39
+ use.add('serde', 'Deserialize');
40
+ use.add('azure_core::fmt', 'SafeDebug');
41
+ body += `#[derive(Clone, Deserialize, ${!extensiblePolymorphicDU ? 'Serialize, ' : ''}SafeDebug)]\n`;
42
+ const content = ((_b = rustUnion.unionKind) === null || _b === void 0 ? void 0 : _b.kind) === 'discriminatedUnionEnvelope' ? `content = "${rustUnion.unionKind.envelopeName}"` : '';
43
+ body += `#[serde(${[content, `tag = "${rustUnion.discriminant}"`].filter(x => x !== '').join(', ')})]\n`;
44
+ body += `${helpers.emitVisibility(rustUnion.visibility)}enum ${rustUnion.name} {\n`;
45
+ for (const member of rustUnion.members) {
46
+ use.addForType(member.type);
47
+ const docs = helpers.formatDocComment(member.docs, true);
48
+ if (docs.length > 0) {
49
+ body += `${indent.get()}#[doc = r#"${docs.substring(0, docs.length - 1)}"#]\n`;
50
+ }
51
+ if (member.discriminantValue !== member.type.name) {
52
+ body += `#[serde(rename = "${member.discriminantValue}")]\n`;
53
+ }
54
+ body += `${indent.get()}${member.type.name}(${helpers.getTypeDeclaration(member.type)})`;
55
+ body += ',\n\n';
47
56
  }
48
- if (member.discriminantValue !== member.type.name) {
49
- body += `#[serde(rename = "${member.discriminantValue}")]\n`;
57
+ if (extensiblePolymorphicDU) {
58
+ body += `${indent.get()}#[serde(untagged)]\n`;
59
+ body += `${indent.get()}${getPolymorphicUnknownVariant(indent, use, extensiblePolymorphicDU, rustUnion.discriminant, false)},\n`;
50
60
  }
51
- body += `${indent.get()}${member.type.name}(${helpers.getTypeDeclaration(member.type)})`;
52
- body += ',\n\n';
53
61
  }
54
- if (extensiblePolymorphicDU) {
55
- body += `${indent.get()}#[serde(untagged)]\n`;
56
- body += `${indent.get()}${getPolymorphicUnknownVariant(indent, use, extensiblePolymorphicDU, rustUnion.discriminant, false)},\n`;
62
+ else {
63
+ use.add('serde', 'Deserialize', 'Serialize');
64
+ use.add('azure_core::fmt', 'SafeDebug');
65
+ body += `#[derive(Clone, Deserialize, SafeDebug, Serialize)]\n`;
66
+ body += `#[serde(untagged)]\n`;
67
+ body += `${helpers.emitVisibility(rustUnion.visibility)}enum ${rustUnion.name} {\n`;
68
+ for (const variant of rustUnion.variants) {
69
+ use.addForType(variant.type);
70
+ const docs = helpers.formatDocComment(variant.docs, true);
71
+ if (docs.length > 0) {
72
+ body += `${indent.get()}#[doc = r#"${docs.substring(0, docs.length - 1)}"#]\n`;
73
+ }
74
+ body += `${indent.get()}${variant.name}(${helpers.getTypeDeclaration(variant.type)}),\n`;
75
+ }
57
76
  }
58
- body += '}\n\n'; // end enum declaration
77
+ body += '}\n\n';
78
+ entries.push({ name: rustUnion.name, body: body });
59
79
  }
80
+ // Sort all entries alphabetically by name.
81
+ entries.sort((a, b) => a.name.localeCompare(b.name));
60
82
  let content = helpers.contentPreamble();
61
83
  content += use.text();
62
- content += body;
84
+ content += entries.map(e => e.body).join('');
63
85
  return {
64
86
  definitions: {
65
87
  name: 'unions',
66
88
  content: content,
67
89
  visibility: visTracker.get(),
68
90
  },
69
- impls: emitUnionImpls(crate, context),
70
- serde: emitUnionSerde(crate),
91
+ impls: emitUnionImpls(module, context),
92
+ serde: emitUnionSerde(module),
71
93
  };
72
94
  }
73
95
  /**
@@ -111,14 +133,16 @@ function getPolymorphicUnknownVariant(indent, use, baseType, discriminant, abbre
111
133
  * returns any trait impls for union types.
112
134
  * if no helpers are required, undefined is returned.
113
135
  *
114
- * @param crate the crate for which to emit model impls
115
- * @param context the context for the provided crate
136
+ * @param module the module for which to emit model impls
137
+ * @param context the context for the provided module
116
138
  * @returns the union impls content or undefined
117
139
  */
118
- function emitUnionImpls(crate, context) {
119
- const use = new Use('modelsOther');
140
+ function emitUnionImpls(module, context) {
141
+ const use = new Use(module, 'modelsOther');
120
142
  const entries = new Array();
121
- for (const rustUnion of crate.unions) {
143
+ for (const rustUnion of module.unions) {
144
+ if (rustUnion.kind !== 'discriminatedUnion')
145
+ continue;
122
146
  const forReq = context.getTryFromForRequestContent(rustUnion, use);
123
147
  // helpers aren't required for all types, so only
124
148
  // add a use statement for a type if it has a helper
@@ -144,17 +168,19 @@ function emitUnionImpls(crate, context) {
144
168
  * returns the content for unions_serde.rs.
145
169
  * if no helpers are required, undefined is returned.
146
170
  *
147
- * @param crate the crate for which to emit model impls
171
+ * @param module the module for which to emit model impls
148
172
  * @returns the union serde helpers or undefined
149
173
  */
150
- function emitUnionSerde(crate) {
151
- if (crate.unions.length === 0) {
174
+ function emitUnionSerde(module) {
175
+ if (module.unions.length === 0) {
152
176
  return undefined;
153
177
  }
154
- const use = new Use('modelsOther');
178
+ const use = new Use(module, 'modelsOther');
155
179
  const indent = new helpers.indentation();
156
180
  let body = '';
157
- for (const rustUnion of crate.unions) {
181
+ for (const rustUnion of module.unions) {
182
+ if (rustUnion.kind !== 'discriminatedUnion')
183
+ continue;
158
184
  if (!isPolymorphicDU(rustUnion.unionKind) || rustUnion.unionKind.kind !== 'discriminatedUnionBase') {
159
185
  continue;
160
186
  }
@@ -1 +1 @@
1
- {"version":3,"file":"unions.js","sourceRoot":"","sources":["../../../src/codegen/unions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unions.js","sourceRoot":"","sources":["../../../src/codegen/unions.ts"],"names":[],"mappings":"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"}
@@ -2,18 +2,20 @@ import * as helpers from './helpers.js';
2
2
  import * as rust from '../codemodel/index.js';
3
3
  /** used to generate use statements */
4
4
  export declare class Use {
5
+ private readonly module;
5
6
  private readonly trees;
6
7
  private readonly scope;
7
8
  /**
8
9
  * instantiates a new instance of the Use type
9
10
  *
11
+ * @param module the module that contains the files in scope
10
12
  * @param scope indicates a scope in which use statements are constructed.
11
13
  * this is only applicable when constructing the path to generated types.
12
14
  * clients - we're in generated/clients
13
15
  * models - we're in generated/models/models.rs
14
16
  * modelsOther - we're in generated/models but not models.rs
15
17
  */
16
- constructor(scope: 'clients' | 'models' | 'modelsOther');
18
+ constructor(module: rust.ModuleContainer, scope: 'clients' | 'models' | 'modelsOther');
17
19
  /**
18
20
  * adds the specified module and type if not already in the list
19
21
  * e.g. ('azure_core', 'Context') or ('super::models', 'FooType')
@@ -29,7 +31,7 @@ export declare class Use {
29
31
  *
30
32
  * @param type the Rust type to add
31
33
  */
32
- addForType(type: rust.Client | rust.Payload | rust.ResponseHeadersTrait | rust.Type): void;
34
+ addForType(type: rust.Client | rust.ResponseHeadersTrait | rust.Type): void;
33
35
  /**
34
36
  * emits Rust use statements for the contents of this Use object
35
37
  *
@@ -1 +1 @@
1
- {"version":3,"file":"use.d.ts","sourceRoot":"","sources":["../../../src/codegen/use.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AAExC,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C,sCAAsC;AACtC,qBAAa,GAAG;IACd,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiB;IACvC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAuC;IAE7D;;;;;;;;OAQG;gBACS,KAAK,EAAE,SAAS,GAAG,QAAQ,GAAG,aAAa;IAKvD;;;;;;;;OAQG;IACH,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI;IAuBlD;;;;OAIG;IACH,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI;IAuG1F;;;;;OAKG;IACH,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,GAAG,MAAM;CA0C3C"}
1
+ {"version":3,"file":"use.d.ts","sourceRoot":"","sources":["../../../src/codegen/use.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AAExC,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAG9C,sCAAsC;AACtC,qBAAa,GAAG;IACd,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuB;IAC9C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiB;IACvC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAuC;IAE7D;;;;;;;;;OASG;gBACS,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE,KAAK,EAAE,SAAS,GAAG,QAAQ,GAAG,aAAa;IAMrF;;;;;;;;OAQG;IACH,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI;IAuBlD;;;;OAIG;IACH,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI;IA8F3E;;;;;OAKG;IACH,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,GAAG,MAAM;CA0C3C"}
@@ -4,18 +4,21 @@
4
4
  *--------------------------------------------------------------------------------------------*/
5
5
  import * as helpers from './helpers.js';
6
6
  import { CodegenError } from './errors.js';
7
+ import * as utils from '../utils/utils.js';
7
8
  /** used to generate use statements */
8
9
  export class Use {
9
10
  /**
10
11
  * instantiates a new instance of the Use type
11
12
  *
13
+ * @param module the module that contains the files in scope
12
14
  * @param scope indicates a scope in which use statements are constructed.
13
15
  * this is only applicable when constructing the path to generated types.
14
16
  * clients - we're in generated/clients
15
17
  * models - we're in generated/models/models.rs
16
18
  * modelsOther - we're in generated/models but not models.rs
17
19
  */
18
- constructor(scope) {
20
+ constructor(module, scope) {
21
+ this.module = module;
19
22
  this.trees = new Array();
20
23
  this.scope = scope;
21
24
  }
@@ -59,12 +62,18 @@ export class Use {
59
62
  return this.addForType(type.type);
60
63
  case 'client': {
61
64
  // client type are only referenced from other things in generated/clients so we ignore any scope
62
- this.add('crate::generated::clients', type.name);
65
+ this.add(`${utils.buildImportPath(this.module, type.module)}::clients`, type.name);
63
66
  break;
64
67
  }
65
68
  case 'discriminatedUnion':
66
69
  case 'enum':
67
- this.add(this.scope === 'clients' ? 'crate::generated::models' : 'super', type.name);
70
+ case 'untaggedUnion':
71
+ if (this.scope === 'clients' || this.module !== type.module) {
72
+ this.add(`${utils.buildImportPath(this.module, type.module)}::models`, type.name);
73
+ }
74
+ else {
75
+ this.add('super', type.name);
76
+ }
68
77
  break;
69
78
  case 'enumValue':
70
79
  this.addForType(type.type);
@@ -72,7 +81,8 @@ export class Use {
72
81
  case 'marker':
73
82
  switch (this.scope) {
74
83
  case 'clients':
75
- this.add('crate::generated::models', type.name);
84
+ // marker types are always in the same module as their client method
85
+ this.add(`${utils.buildImportPath(this.module, this.module)}::models`, type.name);
76
86
  break;
77
87
  case 'modelsOther':
78
88
  this.add('super', type.name);
@@ -84,16 +94,11 @@ export class Use {
84
94
  }
85
95
  break;
86
96
  case 'model':
87
- switch (this.scope) {
88
- case 'clients':
89
- this.add('crate::generated::models', type.name);
90
- break;
91
- case 'models':
92
- // we're in models so no need to bring another model into scope
93
- break;
94
- case 'modelsOther':
95
- this.add('super', type.name);
96
- break;
97
+ if (this.scope === 'clients' || this.module !== type.module) {
98
+ this.add(`${utils.buildImportPath(this.module, type.module)}::models`, type.name);
99
+ }
100
+ else if (this.scope === 'modelsOther') {
101
+ this.add('super', type.name);
97
102
  }
98
103
  break;
99
104
  case 'asyncResponse':
@@ -111,22 +116,12 @@ export class Use {
111
116
  this.add('azure_core::http', type.type.format);
112
117
  }
113
118
  break;
114
- case 'payload':
115
- this.addForType(type.type);
116
- break;
117
119
  case 'requestContent':
118
120
  if (type.format !== 'JsonFormat') {
119
121
  // JsonFormat is the default so no need to bring it into scope
120
122
  this.add('azure_core::http', type.format);
121
123
  }
122
- switch (type.content.kind) {
123
- case 'bytes':
124
- this.addForType(type.content);
125
- break;
126
- case 'payload':
127
- this.addForType(type.content.type);
128
- break;
129
- }
124
+ this.addForType(type.content);
130
125
  break;
131
126
  case 'response':
132
127
  if (type.format !== 'JsonFormat') {
@@ -138,7 +133,8 @@ export class Use {
138
133
  case 'responseHeadersTrait':
139
134
  switch (this.scope) {
140
135
  case 'clients':
141
- this.add(`crate::generated::models`, type.name);
136
+ // header response traits are always in the same module as their client method
137
+ this.add(`${utils.buildImportPath(this.module, this.module)}::models`, type.name);
142
138
  break;
143
139
  case 'models':
144
140
  case 'modelsOther':
@@ -1 +1 @@
1
- {"version":3,"file":"use.js","sourceRoot":"","sources":["../../../src/codegen/use.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use.js","sourceRoot":"","sources":["../../../src/codegen/use.ts"],"names":[],"mappings":"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"}