@azure-tools/typespec-rust 0.5.0 → 0.6.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.
@@ -1 +1 @@
1
- {"version":3,"file":"cargotoml.d.ts","sourceRoot":"","sources":["../../../src/codegen/cargotoml.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,GAAG,MAAM,CAevD"}
1
+ {"version":3,"file":"cargotoml.d.ts","sourceRoot":"","sources":["../../../src/codegen/cargotoml.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,GAAG,MAAM,CAgBvD"}
@@ -19,7 +19,8 @@ export function emitCargoToml(crate) {
19
19
  content += '\n[dependencies]\n';
20
20
  for (const dependency of crate.dependencies) {
21
21
  // dependency versions are managed by the workspace's Cargo.toml file
22
- content += `${dependency.name} = { workspace = true }\n`;
22
+ const features = dependency.features.length > 0 ? `, features = [${dependency.features.sort().map(f => `"${f}"`).join(', ')}]` : '';
23
+ content += `${dependency.name} = { workspace = true${features} }\n`;
23
24
  }
24
25
  }
25
26
  return content;
@@ -1 +1 @@
1
- {"version":3,"file":"cargotoml.js","sourceRoot":"","sources":["../../../src/codegen/cargotoml.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAI/F;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,KAAiB;IAC7C,IAAI,OAAO,GAAG,sBAAsB,KAAK,CAAC,IAAI,iBAAiB,KAAK,CAAC,OAAO,KAAK,CAAC;IAClF,OAAO,IAAI,4BAA4B,CAAC;IACxC,OAAO,IAAI,4BAA4B,CAAC;IACxC,OAAO,IAAI,4BAA4B,CAAC;IACxC,OAAO,IAAI,+BAA+B,CAAC;IAC3C,OAAO,IAAI,iCAAiC,CAAC;IAC7C,IAAI,KAAK,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClC,OAAO,IAAI,oBAAoB,CAAC;QAChC,KAAK,MAAM,UAAU,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YAC5C,qEAAqE;YACrE,OAAO,IAAI,GAAG,UAAU,CAAC,IAAI,2BAA2B,CAAC;QAC3D,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"cargotoml.js","sourceRoot":"","sources":["../../../src/codegen/cargotoml.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAI/F;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,KAAiB;IAC7C,IAAI,OAAO,GAAG,sBAAsB,KAAK,CAAC,IAAI,iBAAiB,KAAK,CAAC,OAAO,KAAK,CAAC;IAClF,OAAO,IAAI,4BAA4B,CAAC;IACxC,OAAO,IAAI,4BAA4B,CAAC;IACxC,OAAO,IAAI,4BAA4B,CAAC;IACxC,OAAO,IAAI,+BAA+B,CAAC;IAC3C,OAAO,IAAI,iCAAiC,CAAC;IAC7C,IAAI,KAAK,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClC,OAAO,IAAI,oBAAoB,CAAC;QAChC,KAAK,MAAM,UAAU,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YAC5C,qEAAqE;YACrE,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACpI,OAAO,IAAI,GAAG,UAAU,CAAC,IAAI,wBAAwB,QAAQ,MAAM,CAAC;QACtE,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"clients.d.ts","sourceRoot":"","sources":["../../../src/codegen/clients.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C,qBAAqB;AACrB,MAAM,WAAW,IAAI;IACnB,wDAAwD;IACxD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,+BAA+B;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,mCAAmC;AACnC,MAAM,WAAW,cAAc;IAC7B,+BAA+B;IAC/B,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAErB,iCAAiC;IACjC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;CAC7B;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAuP5F"}
1
+ {"version":3,"file":"clients.d.ts","sourceRoot":"","sources":["../../../src/codegen/clients.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C,qBAAqB;AACrB,MAAM,WAAW,IAAI;IACnB,wDAAwD;IACxD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,+BAA+B;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,mCAAmC;AACnC,MAAM,WAAW,cAAc;IAC7B,+BAA+B;IAC/B,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAErB,iCAAiC;IACjC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;CAC7B;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CA+P5F"}
@@ -37,7 +37,13 @@ export function emitClients(crate, targetDir) {
37
37
  }
38
38
  body += '}\n\n'; // end client
39
39
  if (client.constructable) {
40
- body += '#[derive(Clone, Debug)]\n';
40
+ // if client options contains only one field (the azure_core::ClientOptions type)
41
+ // then we can simply derive Default and elide the manual implementation.
42
+ let deriveDefault = ', Default';
43
+ if (client.constructable.options.type.fields.length > 1) {
44
+ deriveDefault = '';
45
+ }
46
+ body += `#[derive(Clone, Debug${deriveDefault})]\n`;
41
47
  body += `pub struct ${client.constructable.options.type.name}`;
42
48
  if (client.constructable.options.type.fields.length > 0) {
43
49
  body += ' {\n';
@@ -68,7 +74,7 @@ export function emitClients(crate, targetDir) {
68
74
  const supplementalEndpoint = client.constructable.endpoint;
69
75
  body += `${indent.get()}let mut host = String::from("${supplementalEndpoint.path}");\n`;
70
76
  for (const param of supplementalEndpoint.parameters) {
71
- body += `${indent.get()}host = host.replace("{${param.segment}}", &${getClientEndpointParamValue(param)});\n`;
77
+ body += `${indent.get()}host = host.replace("{${param.segment}}", ${getClientEndpointParamValue(param)});\n`;
72
78
  }
73
79
  body += `${indent.push().get()}${endpointParamName} = ${endpointParamName}.join(&host)?;\n`;
74
80
  }
@@ -170,7 +176,9 @@ export function emitClients(crate, targetDir) {
170
176
  }
171
177
  }
172
178
  body += '}\n\n'; // end client impl
173
- if (client.constructable) {
179
+ // only implement Default when there's more than one field.
180
+ // for the single-case field we just derive Default.
181
+ if (client.constructable && client.constructable.options.type.fields.length > 1) {
174
182
  // emit default trait impl for client options type
175
183
  const clientOptionsType = client.constructable.options;
176
184
  body += `impl Default for ${clientOptionsType.type.name} {\n`;
@@ -380,7 +388,7 @@ function getClientAccessorMethodBody(indent, client, clientAccessor) {
380
388
  let body = `${clientAccessor.returns.name} {\n`;
381
389
  indent.push();
382
390
  for (const field of client.fields) {
383
- body += `${indent.get()}${field.name}: self.${field.name}${typeNeedsCloning(field.type) ? '.clone()' : ''},\n`;
391
+ body += `${indent.get()}${field.name}: self.${field.name}${nonCopyableType(field.type) ? '.clone()' : ''},\n`;
384
392
  }
385
393
  body += `${indent.pop().get()}}`;
386
394
  return body;
@@ -560,7 +568,8 @@ function constructRequest(indent, use, method, paramGroups, fromSelf = true) {
560
568
  setter += `${indent.pop().get()}}\n`;
561
569
  return setter;
562
570
  }
563
- return `${indent.get()}request.insert_header("${headerParam.header.toLowerCase()}", ${getHeaderPathQueryParamValue(use, headerParam, fromSelf)});\n`;
571
+ const borrow = headerParam.location === 'client' && nonCopyableType(headerParam.type) ? '&' : '';
572
+ return `${indent.get()}request.insert_header("${headerParam.header.toLowerCase()}", ${borrow}${getHeaderPathQueryParamValue(use, headerParam, fromSelf)});\n`;
564
573
  });
565
574
  }
566
575
  const bodyParam = paramGroups.body;
@@ -619,11 +628,11 @@ function getAsyncMethodBody(indent, use, client, method) {
619
628
  use.addTypes('azure_core', ['Context', 'Method', 'Request']);
620
629
  const paramGroups = getMethodParamGroup(method);
621
630
  let body = 'let options = options.unwrap_or_default();\n';
622
- body += `${indent.get()}let mut ctx = Context::with_context(&options.method_options.context);\n`;
631
+ body += `${indent.get()}let ctx = Context::with_context(&options.method_options.context);\n`;
623
632
  body += `${indent.get()}let ${urlVarNeedsMut(paramGroups, method)}url = self.${getEndpointFieldName(client)}.clone();\n`;
624
633
  body += constructUrl(indent, use, method, paramGroups);
625
634
  body += constructRequest(indent, use, method, paramGroups);
626
- body += `${indent.get()}self.pipeline.send(&mut ctx, &mut request).await\n`;
635
+ body += `${indent.get()}self.pipeline.send(&ctx, &mut request).await\n`;
627
636
  return body;
628
637
  }
629
638
  /**
@@ -654,22 +663,21 @@ function getPageableMethodBody(indent, use, client, method) {
654
663
  body += `${indent.get()}let ${urlVarNeedsMut(paramGroups, method)}${urlVar} = self.${getEndpointFieldName(client)}.clone();\n`;
655
664
  body += constructUrl(indent, use, method, paramGroups, urlVar);
656
665
  body += `${indent.get()}Ok(Pager::from_callback(move |${nextLinkName}: Option<Url>| {\n`;
657
- body += `${indent.push().get()}let url: Url;\n`;
658
- body += indent.get() + helpers.buildMatch(indent, nextLinkName, [{
666
+ body += `${indent.push().get()}let url = ` + helpers.buildMatch(indent, nextLinkName, [{
659
667
  pattern: `Some(${nextLinkName})`,
660
- body: (indent) => `${indent.get()}url = ${nextLinkName};\n`
668
+ body: (indent) => `${indent.get()} ${nextLinkName}\n`
661
669
  }, {
662
670
  pattern: 'None',
663
- body: (indent) => `${indent.get()}url = ${urlVar}.clone();\n`
671
+ body: (indent) => `${indent.get()}${urlVar}.clone()\n`
664
672
  }]);
665
673
  body += ';\n';
666
674
  // here we want the T in Pager<T>
667
675
  const returnType = helpers.getTypeDeclaration(method.returns.type.type);
668
676
  body += constructRequest(indent, use, method, paramGroups, false);
669
- body += `${indent.get()}let mut ctx = options.method_options.context.clone();\n`;
677
+ body += `${indent.get()}let ctx = options.method_options.context.clone();\n`;
670
678
  body += `${indent.get()}let pipeline = pipeline.clone();\n`;
671
679
  body += `${indent.get()}async move {\n`;
672
- body += `${indent.push().get()}let rsp: Response<${returnType}> = pipeline.send(&mut ctx, &mut request).await?;\n`;
680
+ body += `${indent.push().get()}let rsp: Response<${returnType}> = pipeline.send(&ctx, &mut request).await?;\n`;
673
681
  body += `${indent.get()}let (status, headers, body) = rsp.deconstruct();\n`;
674
682
  body += `${indent.get()}let bytes = body.collect().await?;\n`;
675
683
  body += `${indent.get()}let res: ${returnType} = json::from_json(bytes.clone())?;\n`;
@@ -701,11 +709,12 @@ function getClientEndpointParamValue(param) {
701
709
  }
702
710
  switch (param.type.kind) {
703
711
  case 'String':
704
- return paramName;
712
+ return `&${paramName}`;
705
713
  case 'enum':
714
+ return `${paramName}.as_ref()`;
706
715
  case 'offsetDateTime':
707
716
  case 'scalar':
708
- return `${paramName}.to_string()`;
717
+ return `&${paramName}.to_string()`;
709
718
  default:
710
719
  throw new Error(`unhandled ${param.kind} param type kind ${param.type.kind}`);
711
720
  }
@@ -743,7 +752,10 @@ function getHeaderPathQueryParamValue(use, param, fromSelf) {
743
752
  encoding = 'base64::encode_url_safe';
744
753
  break;
745
754
  }
746
- return `${encoding}(${param})`;
755
+ if (param) {
756
+ return `${encoding}(${param})`;
757
+ }
758
+ return encoding;
747
759
  };
748
760
  if (param.kind === 'headerCollection' || param.kind === 'queryCollection') {
749
761
  if (param.format === 'multi') {
@@ -753,11 +765,11 @@ function getHeaderPathQueryParamValue(use, param, fromSelf) {
753
765
  return `${paramName}.join("${getCollectionDelimiter(param.format)}")`;
754
766
  }
755
767
  // convert the items to strings
756
- let strConv = 'i.to_string()';
768
+ let strConv = '|i| i.to_string()';
757
769
  if (param.type.type.kind === 'encodedBytes') {
758
- strConv = encodeBytes(param.type.type, 'i');
770
+ strConv = encodeBytes(param.type.type);
759
771
  }
760
- return `${paramName}.iter().map(|i| ${strConv}).collect::<Vec<String>>().join("${getCollectionDelimiter(param.format)}")`;
772
+ return `${paramName}.iter().map(${strConv}).collect::<Vec<String>>().join("${getCollectionDelimiter(param.format)}")`;
761
773
  }
762
774
  switch (param.type.kind) {
763
775
  case 'String':
@@ -809,7 +821,7 @@ function getLifetimeAnnotation(type) {
809
821
  return '';
810
822
  }
811
823
  /** returns true if the type isn't copyable thus nees to be cloned */
812
- function typeNeedsCloning(type) {
824
+ function nonCopyableType(type) {
813
825
  const unwrappedType = helpers.unwrapOption(type);
814
826
  switch (unwrappedType.kind) {
815
827
  case 'String':
@@ -1 +1 @@
1
- {"version":3,"file":"clients.js","sourceRoot":"","sources":["../../../src/codegen/clients.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"clients.js","sourceRoot":"","sources":["../../../src/codegen/clients.ts"],"names":[],"mappings":"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"}
@@ -25,14 +25,14 @@ export declare class Context {
25
25
  */
26
26
  getTryFromForRequestContent(type: rust.Type, use: Use): string;
27
27
  /**
28
- * returns the impl TryFrom<Response<T>> for T where T is type.
28
+ * returns the impl azure_core::Model for the specified type.
29
29
  * if no impl is required, it returns the empty string.
30
30
  *
31
31
  * @param type the type for which to implement TryFrom
32
32
  * @param use the use statement builder currently in scope
33
- * @returns the impl TryFrom<T> block for type or the empty string
33
+ * @returns the impl azure_core::Model block for type or the empty string
34
34
  */
35
- getTryFromResponseForType(type: rust.Type, use: Use): string;
35
+ getModelImplForType(type: rust.Type, use: Use): string;
36
36
  /**
37
37
  * returns the body format for the provided model
38
38
  *
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/codegen/context.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C;;;;GAIG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA0C;IAC9E,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAsC;IAC7E,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAsC;IAE3E;;;;OAIG;gBACS,KAAK,EAAE,IAAI,CAAC,KAAK;IA2D7B;;;;;;;OAOG;IACH,2BAA2B,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM;IAoB9D;;;;;;;OAOG;IACH,yBAAyB,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM;IAsB5D;;;;;OAKG;IACH,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU;IAQtD;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;CAS3B"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/codegen/context.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C;;;;GAIG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA0C;IAC9E,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAsC;IAC7E,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAsC;IAE3E;;;;OAIG;gBACS,KAAK,EAAE,IAAI,CAAC,KAAK;IA2D7B;;;;;;;OAOG;IACH,2BAA2B,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM;IAoB9D;;;;;;;OAOG;IACH,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM;IAkBtD;;;;;OAKG;IACH,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU;IAQtD;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;CAS3B"}
@@ -96,28 +96,24 @@ export class Context {
96
96
  return content;
97
97
  }
98
98
  /**
99
- * returns the impl TryFrom<Response<T>> for T where T is type.
99
+ * returns the impl azure_core::Model for the specified type.
100
100
  * if no impl is required, it returns the empty string.
101
101
  *
102
102
  * @param type the type for which to implement TryFrom
103
103
  * @param use the use statement builder currently in scope
104
- * @returns the impl TryFrom<T> block for type or the empty string
104
+ * @returns the impl azure_core::Model block for type or the empty string
105
105
  */
106
- getTryFromResponseForType(type, use) {
106
+ getModelImplForType(type, use) {
107
107
  const format = this.tryFromResponseTypes.get(helpers.getTypeDeclaration(type));
108
108
  if (!format) {
109
109
  return '';
110
110
  }
111
111
  this.validateBodyFormat(format);
112
- use.addTypes('azure_core', ['Response', 'Result']);
113
- use.addType('async_std::task', 'block_on');
112
+ use.addType('azure_core', 'ResponseBody');
114
113
  const indent = new helpers.indentation();
115
- let content = `impl TryFrom<Response<${helpers.getTypeDeclaration(type)}>> for ${helpers.getTypeDeclaration(type)} {\n`;
116
- content += `${indent.get()}type Error = azure_core::Error;\n`;
117
- content += `${indent.get()}fn try_from(value: Response<${helpers.getTypeDeclaration(type)}>) -> Result<Self> {\n`;
118
- content += `${indent.push().get()}let f = || value.into_${format}_body();\n`;
119
- content += `${indent.get()}let r = block_on(f())?;\n`;
120
- content += `${indent.get()}Ok(r)\n`;
114
+ let content = `impl azure_core::Model for ${helpers.getTypeDeclaration(type)} {\n`;
115
+ content += `${indent.get()}async fn from_response_body(body: ResponseBody) -> Result<Self> {\n`;
116
+ content += `${indent.push().get()}body.${format}().await\n`;
121
117
  content += `${indent.pop().get()}}\n`;
122
118
  content += '}\n\n';
123
119
  return content;
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/codegen/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/codegen/context.ts"],"names":[],"mappings":"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"}
@@ -49,10 +49,10 @@ export function emitEnums(crate, context) {
49
49
  }
50
50
  body += ');\n\n'; // end enum macro
51
51
  }
52
- // emit TryFrom as required
52
+ // emit impls as required
53
53
  for (const rustEnum of crate.enums) {
54
54
  body += context.getTryFromForRequestContent(rustEnum, use);
55
- body += context.getTryFromResponseForType(rustEnum, use);
55
+ body += context.getModelImplForType(rustEnum, use);
56
56
  }
57
57
  let content = helpers.contentPreamble();
58
58
  content += use.text();
@@ -1 +1 @@
1
- {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../src/codegen/enums.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAG/F,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAG/B;;;;;;;GAOG;AACH,MAAM,UAAU,SAAS,CAAC,KAAiB,EAAE,OAAgB;IAC3D,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC9B,+EAA+E;IAC/E,GAAG,CAAC,OAAO,CAAC,sBAAsB,EAAE,aAAa,CAAC,CAAC;IAEnD,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAEzC,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QACnC,IAAI,QAAQ,GAAG,aAAa,CAAC;QAC7B,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;YACxB,GAAG,CAAC,OAAO,CAAC,sBAAsB,EAAE,wBAAwB,CAAC,CAAC;YAC9D,QAAQ,GAAG,wBAAwB,CAAC;QACtC,CAAC;QAED,IAAI,IAAI,GAAG,QAAQ,MAAM,CAAC;QAC1B,MAAM,IAAI,GAAG,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,cAAc,IAAI,OAAO,CAAC;QACnD,CAAC;QACD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC,IAAI,KAAK,CAAC;QAE7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;YAChD,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACjC,MAAM,IAAI,GAAG,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAClD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpB,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,cAAc,IAAI,OAAO,CAAC;YACnD,CAAC;YACD,+BAA+B;YAC/B,mDAAmD;YACnD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,IAAI,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,KAAK,IAAI,CAAC;YAC3D,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBACnC,IAAI,IAAI,GAAG,CAAC;YACd,CAAC;YACD,IAAI,IAAI,IAAI,CAAC;QACf,CAAC;QAED,IAAI,IAAI,QAAQ,CAAC,CAAC,iBAAiB;IACrC,CAAC;IAED,2BAA2B;IAC3B,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QACnC,IAAI,IAAI,OAAO,CAAC,2BAA2B,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QAC3D,IAAI,IAAI,OAAO,CAAC,yBAAyB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,OAAO,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IACxC,OAAO,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;IACtB,OAAO,IAAI,IAAI,CAAC;IAEhB,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../src/codegen/enums.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAG/F,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAG/B;;;;;;;GAOG;AACH,MAAM,UAAU,SAAS,CAAC,KAAiB,EAAE,OAAgB;IAC3D,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC9B,+EAA+E;IAC/E,GAAG,CAAC,OAAO,CAAC,sBAAsB,EAAE,aAAa,CAAC,CAAC;IAEnD,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAEzC,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QACnC,IAAI,QAAQ,GAAG,aAAa,CAAC;QAC7B,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;YACxB,GAAG,CAAC,OAAO,CAAC,sBAAsB,EAAE,wBAAwB,CAAC,CAAC;YAC9D,QAAQ,GAAG,wBAAwB,CAAC;QACtC,CAAC;QAED,IAAI,IAAI,GAAG,QAAQ,MAAM,CAAC;QAC1B,MAAM,IAAI,GAAG,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,cAAc,IAAI,OAAO,CAAC;QACnD,CAAC;QACD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC,IAAI,KAAK,CAAC;QAE7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;YAChD,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACjC,MAAM,IAAI,GAAG,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAClD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpB,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,cAAc,IAAI,OAAO,CAAC;YACnD,CAAC;YACD,+BAA+B;YAC/B,mDAAmD;YACnD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,IAAI,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,KAAK,IAAI,CAAC;YAC3D,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBACnC,IAAI,IAAI,GAAG,CAAC;YACd,CAAC;YACD,IAAI,IAAI,IAAI,CAAC;QACf,CAAC;QAED,IAAI,IAAI,QAAQ,CAAC,CAAC,iBAAiB;IACrC,CAAC;IAED,yBAAyB;IACzB,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QACnC,IAAI,IAAI,OAAO,CAAC,2BAA2B,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QAC3D,IAAI,IAAI,OAAO,CAAC,mBAAmB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IACrD,CAAC;IAED,IAAI,OAAO,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IACxC,OAAO,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;IACtB,OAAO,IAAI,IAAI,CAAC;IAEhB,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -41,12 +41,17 @@ function emitModelsInternal(crate, context, pub) {
41
41
  if (model.internal === pub) {
42
42
  continue;
43
43
  }
44
+ const bodyFormat = context.getModelBodyFormat(model);
44
45
  body += helpers.formatDocComment(model.docs);
45
46
  body += helpers.annotationDerive('Default', 'azure_core::Model');
46
47
  body += helpers.AnnotationNonExhaustive;
47
48
  if (model.xmlName) {
48
49
  body += `#[serde(rename = "${model.xmlName}")]\n`;
49
50
  }
51
+ if (bodyFormat === 'xml') {
52
+ // json is the default if not specified so no need to handle it
53
+ body += `#[typespec(format = "xml")]\n`;
54
+ }
50
55
  body += `pub struct ${model.name} {\n`;
51
56
  for (const field of model.fields) {
52
57
  use.addForType(field.type);
@@ -69,7 +74,7 @@ function emitModelsInternal(crate, context, pub) {
69
74
  serdeParams.push(`serialize_with = "base64::serialize${format}"`);
70
75
  use.addType('azure_core', 'base64');
71
76
  }
72
- else if (context.getModelBodyFormat(model) === 'xml' && helpers.unwrapOption(field.type).kind === 'vector' && field.xmlKind !== 'unwrappedList') {
77
+ else if (bodyFormat === 'xml' && helpers.unwrapOption(field.type).kind === 'vector' && field.xmlKind !== 'unwrappedList') {
73
78
  // this is a wrapped list so we need a helper type for serde
74
79
  const xmlListWrapper = getXMLListWrapper(field);
75
80
  serdeParams.push(`deserialize_with = "${xmlListWrapper.name}::unwrap"`);
@@ -100,7 +105,6 @@ function emitModelsInternal(crate, context, pub) {
100
105
  continue;
101
106
  }
102
107
  body += context.getTryFromForRequestContent(model, use);
103
- body += context.getTryFromResponseForType(model, use);
104
108
  }
105
109
  }
106
110
  let content = helpers.contentPreamble();
@@ -126,14 +130,12 @@ function emitModelsSerde(crate, context) {
126
130
  continue;
127
131
  }
128
132
  const forReq = context.getTryFromForRequestContent(model, use);
129
- const forRes = context.getTryFromResponseForType(model, use);
130
133
  // helpers aren't required for all types, so only
131
134
  // add a use statement for a type if it has a helper
132
- if (forReq.length > 0 || forRes.length > 0) {
135
+ if (forReq.length > 0) {
133
136
  use.addForType(model);
134
137
  }
135
138
  body += forReq;
136
- body += forRes;
137
139
  }
138
140
  if (body.length === 0) {
139
141
  // no helpers
@@ -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":"AAAA;;;+FAG+F;AAG/F,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAkB/B;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CAAC,KAAiB,EAAE,OAAgB;IAC5D,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO;QACL,MAAM,EAAE,kBAAkB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC;QAChD,KAAK,EAAE,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC;QACtC,QAAQ,EAAE,kBAAkB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC;QACnD,UAAU,EAAE,mBAAmB,EAAE;KAClC,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,kBAAkB,CAAC,KAAiB,EAAE,OAAgB,EAAE,GAAY;IAC3E,kEAAkE;IAClE,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAChD,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC;IAEpD,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAEzC,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjC,IAAI,KAAK,CAAC,QAAQ,KAAK,GAAG,EAAE,CAAC;YAC3B,SAAS;QACX,CAAC;QAED,MAAM,UAAU,GAAG,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAErD,IAAI,IAAI,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,IAAI,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;QACjE,IAAI,IAAI,OAAO,CAAC,uBAAuB,CAAC;QACxC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,IAAI,qBAAqB,KAAK,CAAC,OAAO,OAAO,CAAC;QACpD,CAAC;QACD,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;YACzB,+DAA+D;YAC/D,IAAI,IAAI,+BAA+B,CAAC;QAC1C,CAAC;QACD,IAAI,IAAI,cAAc,KAAK,CAAC,IAAI,MAAM,CAAC;QAEvC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACjC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,IAAI,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC7C,MAAM,WAAW,GAAG,IAAI,KAAK,EAAU,CAAC;YACxC,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YAC1C,IAAI,WAAW,EAAE,CAAC;gBAChB,WAAW,CAAC,IAAI,CAAC,aAAa,WAAW,GAAG,CAAC,CAAC;YAChD,CAAC;YAED,iFAAiF;YACjF,iFAAiF;YACjF,IAAI,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;gBAC7D,yDAAyD;gBACzD,oEAAoE;gBACpE,IAAI,MAAM,GAAG,EAAE,CAAC;gBAChB,IAAwB,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAE,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;oBAC7E,MAAM,GAAG,WAAW,CAAC;gBACvB,CAAC;gBACD,WAAW,CAAC,IAAI,CAAC,0CAA0C,MAAM,GAAG,CAAC,CAAC;gBACtE,WAAW,CAAC,IAAI,CAAC,sCAAsC,MAAM,GAAG,CAAC,CAAC;gBAClE,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;YACtC,CAAC;iBAAM,IAAI,UAAU,KAAK,KAAK,IAAI,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,KAAK,eAAe,EAAE,CAAC;gBAC3H,4DAA4D;gBAC5D,MAAM,cAAc,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBAChD,WAAW,CAAC,IAAI,CAAC,uBAAuB,cAAc,CAAC,IAAI,WAAW,CAAC,CAAC;gBACxE,WAAW,CAAC,IAAI,CAAC,qBAAqB,cAAc,CAAC,IAAI,SAAS,CAAC,CAAC;gBACpE,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,2BAA2B,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC;YACzE,CAAC;YAED,uEAAuE;YACvE,mDAAmD;YACnD,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACjC,WAAW,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;YAC9D,CAAC;YAED,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,WAAW,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;YACjE,CAAC;YACD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;QACtH,CAAC;QAED,IAAI,IAAI,OAAO,CAAC;IAClB,CAAC;IAED,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;QAChB,kCAAkC;QAClC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,qDAAqD;IACrD,4DAA4D;IAC5D,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACjC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACpB,SAAS;YACX,CAAC;YAED,IAAI,IAAI,OAAO,CAAC,2BAA2B,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAED,IAAI,OAAO,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IACxC,OAAO,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;IACtB,OAAO,IAAI,IAAI,CAAC;IAEhB,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,eAAe,CAAC,KAAiB,EAAE,OAAgB;IAC1D,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;IACtB,IAAI,IAAI,GAAG,EAAE,CAAC;IAEd,2BAA2B;IAC3B,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjC,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnB,mEAAmE;YACnE,SAAS;QACX,CAAC;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAE/D,iDAAiD;QACjD,oDAAoD;QACpD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;QAED,IAAI,IAAI,MAAM,CAAC;IACjB,CAAC;IAED,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,aAAa;QACb,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,OAAO,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IACxC,OAAO,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;IACtB,OAAO,IAAI,IAAI,CAAC;IAEhB,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,cAAc,CAAC,KAAsB;IAC5C,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,KAAK,WAAW,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;QAC5F,OAAO,SAAS,CAAC;IACnB,CAAC;SAAM,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;QACpC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,kDAAkD;IAClD,IAAI,SAAS,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;IACtE,IAAI,KAAK,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;QAClC,SAAS,GAAG,GAAG,GAAG,SAAS,CAAC;IAC9B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AA2BD,MAAM,cAAc;IAClB,YAAY,IAAY,EAAE,SAAiB,EAAE,SAAoB;QAC/D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;CACF;AAED,oDAAoD;AACpD,MAAM,eAAe,GAAG,IAAI,GAAG,EAA0B,CAAC;AAE1D;;;;;;GAMG;AACH,SAAS,iBAAiB,CAAC,KAAsB;IAC/C,2DAA2D;IAC3D,2DAA2D;IAC3D,wDAAwD;IACxD,IAAI,sBAA8B,CAAC;IACnC,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnD,QAAQ,WAAW,CAAC,IAAI,EAAE,CAAC;QACzB,KAAK,QAAQ;YACX,sBAAsB,GAAG,QAAQ,CAAC;YAClC,MAAM;QACR,KAAK,QAAQ;YACX,QAAQ,WAAW,CAAC,IAAI,EAAE,CAAC;gBACzB,KAAK,MAAM;oBACT,sBAAsB,GAAG,SAAS,CAAC;oBACnC,MAAM;gBACR,KAAK,KAAK;oBACR,sBAAsB,GAAG,SAAS,CAAC;oBACnC,MAAM;gBACR,KAAK,KAAK;oBACR,sBAAsB,GAAG,SAAS,CAAC;oBACnC,MAAM;gBACR,KAAK,KAAK;oBACR,sBAAsB,GAAG,OAAO,CAAC;oBACjC,MAAM;gBACR,KAAK,KAAK;oBACR,sBAAsB,GAAG,OAAO,CAAC;oBACjC,MAAM;gBACR,KAAK,KAAK;oBACR,sBAAsB,GAAG,OAAO,CAAC;oBACjC,MAAM;gBACR,KAAK,IAAI;oBACP,sBAAsB,GAAG,MAAM,CAAC;oBAChC,MAAM;YACV,CAAC;YACD,MAAM;QACR;YACE,sBAAsB,GAAG,OAAO,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;IACrE,CAAC;IAED,mEAAmE;IACnE,gEAAgE;IAChE,MAAM,eAAe,GAAG,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,CAAC;IACzG,IAAI,cAAc,GAAG,eAAe,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAC1D,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,cAAc,GAAG,IAAI,cAAc,CAAC,eAAe,EAAE,sBAAsB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QACzF,cAAc,CAAC,KAAK,GAAG,eAAe,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;QACjF,eAAe,CAAC,GAAG,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,cAAc,CAAC;AACxB,CAAC;AAED;;;;;GAKG;AACH,SAAS,mBAAmB;IAC1B,IAAI,eAAe,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1D,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,OAAO,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE/E,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IACzC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;IAEtB,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,aAAa,EAAE,cAAc,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC;IAElF,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;QACvC,IAAI,IAAI,qCAAqC,CAAC;QAC9C,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;YACtB,IAAI,IAAI,qBAAqB,WAAW,CAAC,KAAK,OAAO,CAAC;QACxD,CAAC;QAED,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACtC,MAAM,SAAS,GAAG,OAAO,CAAC,kBAAkB,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QAEpE,IAAI,IAAI,cAAc,WAAW,CAAC,IAAI,MAAM,CAAC;QAC7C,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,qBAAqB,CAAC;QAC7C,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,WAAW,CAAC,SAAS,KAAK,SAAS,KAAK,CAAC;QACnE,IAAI,IAAI,OAAO,CAAC;QAEhB,IAAI,IAAI,QAAQ,WAAW,CAAC,IAAI,MAAM,CAAC;QAEvC,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,oDAAoD,SAAS,4CAA4C,CAAC;QACjI,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,WAAW,CAAC,IAAI,gCAAgC,WAAW,CAAC,SAAS,KAAK,CAAC;QAC/G,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC;QAErC,MAAM,cAAc,GAAG,cAAc,CAAC;QACtC,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,kBAAkB,cAAc,MAAM,SAAS,qEAAqE,CAAC;QAC5I,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,WAAW,CAAC,IAAI,MAAM,CAAC;QACxD,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,WAAW,CAAC,SAAS,KAAK,cAAc,gBAAgB,CAAC;QAC1F,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACnC,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,0BAA0B,CAAC;QAClD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QAEnC,IAAI,IAAI,OAAO,CAAC,CAAC,WAAW;IAC9B,CAAC;IAED,IAAI,OAAO,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IACxC,iEAAiE;IACjE,2EAA2E;IAC3E,OAAO,IAAI,gEAAgE,CAAC;IAC5E,OAAO,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;IACtB,OAAO,IAAI,IAAI,CAAC;IAEhB,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -30,6 +30,8 @@ export type ServiceType = 'azure-arm' | 'data-plane';
30
30
  export interface CrateDependency {
31
31
  /** the name of the Crate */
32
32
  name: string;
33
+ /** the features to enable for the Crate */
34
+ features: Array<string>;
33
35
  }
34
36
  /** Module is an entry in a mod.rs file */
35
37
  export interface Module {
@@ -49,7 +51,7 @@ export declare class Crate implements Crate {
49
51
  sortContent(): void;
50
52
  }
51
53
  export declare class CrateDependency implements CrateDependency {
52
- constructor(name: string);
54
+ constructor(name: string, features?: string[]);
53
55
  }
54
56
  export declare class Module implements Module {
55
57
  constructor(name: string, pub: boolean);
@@ -1 +1 @@
1
- {"version":3,"file":"crate.d.ts","sourceRoot":"","sources":["../../../src/codemodel/crate.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AAEpC;;;GAGG;AACH,MAAM,WAAW,KAAK;IACpB,4BAA4B;IAC5B,IAAI,EAAE,MAAM,CAAC;IAEb,+BAA+B;IAC/B,OAAO,EAAE,MAAM,CAAC;IAEhB,8BAA8B;IAC9B,IAAI,EAAE,WAAW,CAAC;IAElB,6CAA6C;IAC7C,YAAY,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;IAErC,mEAAmE;IACnE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEzB,qEAAqE;IACrE,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAE3B,oEAAoE;IACpE,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;CAC/B;AAED,qDAAqD;AACrD,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,YAAY,CAAC;AAErD;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,4BAA4B;IAC5B,IAAI,EAAE,MAAM,CAAC;CACd;AAED,0CAA0C;AAC1C,MAAM,WAAW,MAAM;IACrB,6BAA6B;IAC7B,IAAI,EAAE,MAAM,CAAC;IAEb,8BAA8B;IAC9B,GAAG,EAAE,OAAO,CAAC;CACd;AAKD,qBAAa,KAAM,YAAW,KAAK;gBACrB,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW;IAU5D;;;OAGG;IACH,aAAa,CAAC,UAAU,EAAE,eAAe,GAAG,IAAI;IAShD,0CAA0C;IAC1C,WAAW,IAAI,IAAI;CA6BpB;AAED,qBAAa,eAAgB,YAAW,eAAe;gBACzC,IAAI,EAAE,MAAM;CAGzB;AAED,qBAAa,MAAO,YAAW,MAAM;gBACvB,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO;CAIvC"}
1
+ {"version":3,"file":"crate.d.ts","sourceRoot":"","sources":["../../../src/codemodel/crate.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AAEpC;;;GAGG;AACH,MAAM,WAAW,KAAK;IACpB,4BAA4B;IAC5B,IAAI,EAAE,MAAM,CAAC;IAEb,+BAA+B;IAC/B,OAAO,EAAE,MAAM,CAAC;IAEhB,8BAA8B;IAC9B,IAAI,EAAE,WAAW,CAAC;IAElB,6CAA6C;IAC7C,YAAY,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;IAErC,mEAAmE;IACnE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEzB,qEAAqE;IACrE,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAE3B,oEAAoE;IACpE,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;CAC/B;AAED,qDAAqD;AACrD,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,YAAY,CAAC;AAErD;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,4BAA4B;IAC5B,IAAI,EAAE,MAAM,CAAC;IAEb,2CAA2C;IAC3C,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACzB;AAED,0CAA0C;AAC1C,MAAM,WAAW,MAAM;IACrB,6BAA6B;IAC7B,IAAI,EAAE,MAAM,CAAC;IAEb,8BAA8B;IAC9B,GAAG,EAAE,OAAO,CAAC;CACd;AAKD,qBAAa,KAAM,YAAW,KAAK;gBACrB,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW;IAU5D;;;OAGG;IACH,aAAa,CAAC,UAAU,EAAE,eAAe,GAAG,IAAI;IAWhD,0CAA0C;IAC1C,WAAW,IAAI,IAAI;CA6BpB;AAED,qBAAa,eAAgB,YAAW,eAAe;gBACzC,IAAI,EAAE,MAAM,EAAE,QAAQ,WAAsB;CAIzD;AAED,qBAAa,MAAO,YAAW,MAAM;gBACvB,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO;CAIvC"}
@@ -21,6 +21,8 @@ export class Crate {
21
21
  addDependency(dependency) {
22
22
  for (const dep of this.dependencies) {
23
23
  if (dep.name === dependency.name) {
24
+ // merge in any features
25
+ dep.features = dep.features.concat(dependency.features.filter(item => !dep.features.includes(item)));
24
26
  return;
25
27
  }
26
28
  }
@@ -57,8 +59,9 @@ export class Crate {
57
59
  }
58
60
  }
59
61
  export class CrateDependency {
60
- constructor(name) {
62
+ constructor(name, features = new Array()) {
61
63
  this.name = name;
64
+ this.features = features;
62
65
  }
63
66
  }
64
67
  export class Module {
@@ -1 +1 @@
1
- {"version":3,"file":"crate.js","sourceRoot":"","sources":["../../../src/codemodel/crate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crate.js","sourceRoot":"","sources":["../../../src/codemodel/crate.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/tcgcadapter/adapter.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAIjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAE/C,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C,2DAA2D;AAC3D,qBAAa,OAAO;IAClB;;;;;OAKG;WACU,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAU/E,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IACnC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAkB;IAGtC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyB;IAG/C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAoC;IAEvE,OAAO;IAaP,wDAAwD;IACxD,WAAW,IAAI,IAAI,CAAC,KAAK;IAoCzB,4DAA4D;IAC5D,OAAO,CAAC,UAAU;IAqBlB;;;;;OAKG;IACH,OAAO,CAAC,OAAO;IAoBf;;;;;OAKG;IACH,OAAO,CAAC,QAAQ;IAgChB;;;;;;OAMG;IACH,OAAO,CAAC,aAAa;IAsBrB,0CAA0C;IAC1C,OAAO,CAAC,OAAO;IAmIf,iCAAiC;IACjC,OAAO,CAAC,WAAW;IAWnB;;;;;OAKG;IACH,OAAO,CAAC,UAAU;IAWlB,4EAA4E;IAC5E,OAAO,CAAC,YAAY;IAcpB;;;;;;;OAOG;IACH,OAAO,CAAC,oBAAoB;IAiN5B;;;;;;OAMG;IACH,OAAO,CAAC,yBAAyB;IAajC;;;;;;OAMG;IACH,OAAO,CAAC,oBAAoB;IA8B5B;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IA+KnB;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IA2F5B;;;;;;;OAOG;IACH,OAAO,CAAC,0BAA0B;IA8BlC;;;;;OAKG;IACH,OAAO,CAAC,eAAe;CAcxB"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/tcgcadapter/adapter.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAIjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAE/C,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C,2DAA2D;AAC3D,qBAAa,OAAO;IAClB;;;;;OAKG;WACU,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAW/E,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IACnC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAkB;IAGtC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyB;IAG/C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAoC;IAEvE,OAAO;IAaP,wDAAwD;IACxD,WAAW,IAAI,IAAI,CAAC,KAAK;IAgCzB,4DAA4D;IAC5D,OAAO,CAAC,UAAU;IAuBlB;;;;;OAKG;IACH,OAAO,CAAC,OAAO;IAoBf;;;;;OAKG;IACH,OAAO,CAAC,QAAQ;IA0DhB;;;;;;OAMG;IACH,OAAO,CAAC,aAAa;IAsBrB,0CAA0C;IAC1C,OAAO,CAAC,OAAO;IAqJf,iCAAiC;IACjC,OAAO,CAAC,WAAW;IAWnB;;;;;OAKG;IACH,OAAO,CAAC,UAAU;IAWlB,4EAA4E;IAC5E,OAAO,CAAC,YAAY;IAcpB;;;;;;;OAOG;IACH,OAAO,CAAC,oBAAoB;IAiN5B;;;;;;OAMG;IACH,OAAO,CAAC,yBAAyB;IAajC;;;;;;OAMG;IACH,OAAO,CAAC,oBAAoB;IA8B5B;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAqLnB;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IA2F5B;;;;;;;OAOG;IACH,OAAO,CAAC,0BAA0B;IA8BlC;;;;;OAKG;IACH,OAAO,CAAC,eAAe;CAcxB"}
@@ -22,6 +22,7 @@ export class Adapter {
22
22
  // so we need to add it to the allow list of decorators
23
23
  const ctx = await tcgc.createSdkContext(context, '@azure-tools/typespec-rust', {
24
24
  additionalDecorators: ['TypeSpec\\.@encodedName'],
25
+ disableUsageAccessPropagationToBase: true,
25
26
  });
26
27
  return new Adapter(ctx, context.options);
27
28
  }
@@ -45,9 +46,6 @@ export class Adapter {
45
46
  if (this.crate.enums.length > 0 || this.crate.models.length > 0) {
46
47
  this.crate.addDependency(new rust.CrateDependency('typespec_client_core'));
47
48
  }
48
- if (this.crate.clients.length > 0) {
49
- this.crate.addDependency(new rust.CrateDependency('async-std'));
50
- }
51
49
  // TODO: remove once https://github.com/Azure/typespec-rust/issues/22 is fixed
52
50
  for (const client of this.crate.clients) {
53
51
  let done = false;
@@ -78,12 +76,14 @@ export class Adapter {
78
76
  this.crate.enums.push(rustEnum);
79
77
  }
80
78
  for (const model of this.ctx.sdkPackage.models) {
81
- if ((model.usage & tcgc.UsageFlags.Exception) === tcgc.UsageFlags.Exception && (model.usage & tcgc.UsageFlags.Input) === 0 && (model.usage & tcgc.UsageFlags.Output) === 0 || tcgc.isAzureCoreModel(model)) {
79
+ if (((model.usage & tcgc.UsageFlags.Exception) === tcgc.UsageFlags.Exception && (model.usage & tcgc.UsageFlags.Input) === 0 && (model.usage & tcgc.UsageFlags.Output) === 0) || tcgc.isAzureCoreModel(model)) {
82
80
  // skip error and core types as we use their azure_core equivalents
83
81
  continue;
84
82
  }
85
83
  const rustModel = this.getModel(model);
86
84
  this.crate.models.push(rustModel);
85
+ // presence of models requires the derive feature
86
+ this.crate.addDependency(new rust.CrateDependency('typespec_client_core', ['derive']));
87
87
  }
88
88
  }
89
89
  /**
@@ -128,15 +128,40 @@ export class Adapter {
128
128
  rustModel.docs.description = model.doc;
129
129
  rustModel.xmlName = getXMLName(model.decorators);
130
130
  this.types.set(modelName, rustModel);
131
- for (const property of model.properties) {
131
+ // aggregate the properties from the provided type and its parent types
132
+ const allProps = new Array();
133
+ for (const prop of model.properties) {
134
+ allProps.push(prop);
135
+ }
136
+ let parent = model.baseModel;
137
+ while (parent) {
138
+ for (const parentProp of parent.properties) {
139
+ const exists = values(allProps).where(p => { return p.name === parentProp.name; }).first();
140
+ if (exists) {
141
+ // don't add the duplicate. the TS compiler has better enforcement than OpenAPI
142
+ // to ensure that duplicate fields with different types aren't added.
143
+ continue;
144
+ }
145
+ allProps.push(parentProp);
146
+ }
147
+ // TODO: propagate additional properties https://github.com/Azure/typespec-rust/issues/4
148
+ parent = parent.baseModel;
149
+ }
150
+ for (const property of allProps) {
132
151
  if (property.kind !== 'property') {
133
152
  if (property.type.kind === 'constant') {
134
153
  // typical case is content-type header.
135
154
  // we don't need to emit this as a field so skip it.
136
155
  continue;
137
156
  }
138
- // TODO: https://github.com/Azure/typespec-rust/issues/96
139
- throw new Error(`model property kind ${property.kind} NYI`);
157
+ else if (property.kind === 'path') {
158
+ // a property of kind path is the model key and
159
+ // will be exposed as a discrete method parameter.
160
+ // we just adapt it here as a regular model field.
161
+ }
162
+ else {
163
+ throw new Error(`model property kind ${property.kind} NYI`);
164
+ }
140
165
  }
141
166
  const structField = this.getModelField(property, !rustModel.internal);
142
167
  rustModel.fields.push(structField);
@@ -179,6 +204,7 @@ export class Adapter {
179
204
  case 'boolean':
180
205
  scalarType = 'bool';
181
206
  break;
207
+ case 'float':
182
208
  case 'float32':
183
209
  scalarType = 'f32';
184
210
  break;
@@ -202,6 +228,15 @@ export class Adapter {
202
228
  this.types.set(kind, scalar);
203
229
  return scalar;
204
230
  };
231
+ const getStringType = () => {
232
+ let stringType = this.types.get(type.kind);
233
+ if (stringType) {
234
+ return stringType;
235
+ }
236
+ stringType = new rust.StringType();
237
+ this.types.set(type.kind, stringType);
238
+ return stringType;
239
+ };
205
240
  switch (type.kind) {
206
241
  case 'array': {
207
242
  const keyName = recursiveKeyName(type.kind, type.valueType);
@@ -239,6 +274,19 @@ export class Adapter {
239
274
  this.types.set(keyName, hashmapType);
240
275
  return hashmapType;
241
276
  }
277
+ case 'duration':
278
+ switch (type.wireType.kind) {
279
+ case 'float':
280
+ case 'float32':
281
+ case 'float64':
282
+ case 'int32':
283
+ case 'int64':
284
+ return getScalar(type.wireType.kind);
285
+ case 'string':
286
+ return getStringType();
287
+ default:
288
+ throw new Error(`unhandled duration wireType.kind ${type.wireType.kind}`);
289
+ }
242
290
  case 'boolean':
243
291
  case 'float32':
244
292
  case 'float64':
@@ -264,13 +312,7 @@ export class Adapter {
264
312
  this.types.set(etagKey, etagType);
265
313
  return etagType;
266
314
  }
267
- let stringType = this.types.get(type.kind);
268
- if (stringType) {
269
- return stringType;
270
- }
271
- stringType = new rust.StringType();
272
- this.types.set(type.kind, stringType);
273
- return stringType;
315
+ return getStringType();
274
316
  }
275
317
  case 'unknown': {
276
318
  let anyType = this.types.get(type.kind);
@@ -719,7 +761,12 @@ export class Adapter {
719
761
  if (!defaultContentType) {
720
762
  throw new Error(`unable to determine content type for method ${method.name}`);
721
763
  }
722
- return this.adaptBodyFormat(defaultContentType);
764
+ const bodyFormat = this.adaptBodyFormat(defaultContentType);
765
+ if (bodyFormat === 'xml') {
766
+ // XML support is disabled by default
767
+ this.crate.addDependency(new rust.CrateDependency('azure_core', ['xml']));
768
+ }
769
+ return bodyFormat;
723
770
  };
724
771
  let returnType;
725
772
  if (method.kind === 'paging') {
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/tcgcadapter/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/tcgcadapter/adapter.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/tcgcadapter/helpers.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CA+BvD;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,CAQ9E;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAKvD"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/tcgcadapter/helpers.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAkCvD;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,CAQ9E;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAKvD"}
@@ -22,6 +22,8 @@ export function fixUpEnumValueName(name) {
22
22
  if (wordDotNumMatch) {
23
23
  name = name.replace(wordDotNumMatch[0], wordDotNumMatch[0].replace('.', ''));
24
24
  }
25
+ // remove any commas (e.g. value name Foo,Bar becomes FooBar)
26
+ name = name.replace(',', '');
25
27
  // if we have a name like V2022_12_01_preview, we want to
26
28
  // turn this into V2022_12_01Preview to make the linter happy
27
29
  const parts = name.split('_');
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/tcgcadapter/helpers.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAE/F,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAGhD;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAEhC,kEAAkE;IAClE,wDAAwD;IACxD,8CAA8C;IAC9C,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAChD,IAAI,cAAc,EAAE,CAAC;QACnB,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IAChF,CAAC;IAED,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC/C,IAAI,eAAe,EAAE,CAAC;QACpB,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;IAC/E,CAAC;IAED,yDAAyD;IACzD,6DAA6D;IAC7D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,IAAI,GAAG,EAAE,CAAC;QACV,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;YACtC,KAAK,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACxC,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;YACjB,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;gBACtD,IAAI,IAAI,GAAG,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAmC;IACtE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAuB,EAAE,CAAuB,EAAU,EAAE;QACvE,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,EAAE,CAAC;YAChF,sEAAsE;YACtE,OAAO,CAAC,CAAC,CAAC;QACZ,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,IAAe;IAC1C,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/tcgcadapter/helpers.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAE/F,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAGhD;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAEhC,kEAAkE;IAClE,wDAAwD;IACxD,8CAA8C;IAC9C,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAChD,IAAI,cAAc,EAAE,CAAC;QACnB,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IAChF,CAAC;IAED,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC/C,IAAI,eAAe,EAAE,CAAC;QACpB,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;IAC/E,CAAC;IAED,6DAA6D;IAC7D,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAE7B,yDAAyD;IACzD,6DAA6D;IAC7D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,IAAI,GAAG,EAAE,CAAC;QACV,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;YACtC,KAAK,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACxC,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;YACjB,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;gBACtD,IAAI,IAAI,GAAG,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAmC;IACtE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAuB,EAAE,CAAuB,EAAU,EAAE;QACvE,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,EAAE,CAAC;YAChF,sEAAsE;YACtE,OAAO,CAAC,CAAC,CAAC;QACZ,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,IAAe;IAC1C,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@azure-tools/typespec-rust",
3
- "version": "0.5.0",
3
+ "version": "0.6.0",
4
4
  "description": "TypeSpec emitter for Rust SDKs",
5
5
  "type": "module",
6
6
  "main": "dist/src/index.js",
@@ -15,7 +15,7 @@
15
15
  "node": ">=20.0.0"
16
16
  },
17
17
  "scripts": {
18
- "cadl-ranch": "node .scripts/cadl-ranch.js",
18
+ "spector": "node .scripts/spector.js",
19
19
  "clean": "ver > nul 2>&1 nul && npm run --silent clean-cmd || npm run --silent clean-bash",
20
20
  "clean-cmd": "if exist dist rmdir /s /q dist && exit 0 || exit 0 ",
21
21
  "clean-bash": "rm nul && rm -rf dist && exit 0 || exit 0",
@@ -34,7 +34,7 @@
34
34
  "url": "git+https://github.com/Azure/typespec-rust.git"
35
35
  },
36
36
  "keywords": [
37
- "cadl",
37
+ "typespec",
38
38
  "rust",
39
39
  "rustlang",
40
40
  "typespec"
@@ -47,13 +47,13 @@
47
47
  "homepage": "https://github.com/Azure/typespec-rust#readme",
48
48
  "readme": "https://github.com/Azure/typespec-rust/blob/main/readme.md",
49
49
  "devDependencies": {
50
- "@azure-tools/cadl-ranch": "0.16.2",
51
- "@azure-tools/cadl-ranch-expect": "0.15.7",
52
- "@azure-tools/cadl-ranch-specs": "0.39.6",
50
+ "@typespec/spector": "~0.1.0-alpha.5",
51
+ "@typespec/http-specs": "~0.1.0-alpha.5",
52
+ "@azure-tools/azure-http-specs": "~0.1.0-alpha.4",
53
53
  "@azure-tools/typespec-autorest": "0.49.0",
54
54
  "@azure-tools/typespec-azure-core": "0.49.0",
55
55
  "@azure-tools/typespec-azure-resource-manager": "0.49.0",
56
- "@azure-tools/typespec-client-generator-core": "0.49.0",
56
+ "@azure-tools/typespec-client-generator-core": "0.49.1",
57
57
  "@types/js-yaml": "~4.0.9",
58
58
  "@types/node": "^20.14.10",
59
59
  "@typespec/compiler": "0.63.0",
@@ -70,7 +70,7 @@
70
70
  "typescript-eslint": "~8.17.0"
71
71
  },
72
72
  "peerDependencies": {
73
- "@azure-tools/typespec-client-generator-core": ">=0.49.0 <1.0.0",
73
+ "@azure-tools/typespec-client-generator-core": ">=0.49.1 <1.0.0",
74
74
  "@typespec/compiler": ">=0.63.0 <1.0.0"
75
75
  },
76
76
  "dependencies": {
@@ -81,5 +81,5 @@
81
81
  "source-map-support": "0.5.21",
82
82
  "vitest": "^1.6.0"
83
83
  },
84
- "packageManager": "pnpm@9.15.0+sha512.76e2379760a4328ec4415815bcd6628dee727af3779aaa4c914e3944156c4299921a89f976381ee107d41f12cfa4b66681ca9c718f0668fa0831ed4c6d8ba56c"
84
+ "packageManager": "pnpm@9.15.3+sha512.1f79bc245a66eb0b07c5d4d83131240774642caaa86ef7d0434ab47c0d16f66b04e21e0c086eb61e62c77efc4d7f7ec071afad3796af64892fae66509173893a"
85
85
  }