@azure-tools/typespec-rust 0.26.0 → 0.28.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.
- package/dist/src/codegen/clients.js +130 -44
- package/dist/src/codegen/clients.js.map +1 -1
- package/dist/src/codegen/context.d.ts +2 -1
- package/dist/src/codegen/context.d.ts.map +1 -1
- package/dist/src/codegen/context.js +14 -5
- package/dist/src/codegen/context.js.map +1 -1
- package/dist/src/codegen/models.js +29 -10
- package/dist/src/codegen/models.js.map +1 -1
- package/dist/src/codemodel/client.d.ts +26 -1
- package/dist/src/codemodel/client.d.ts.map +1 -1
- package/dist/src/codemodel/client.js +13 -1
- package/dist/src/codemodel/client.js.map +1 -1
- package/dist/src/codemodel/types.d.ts +5 -3
- package/dist/src/codemodel/types.d.ts.map +1 -1
- package/dist/src/codemodel/types.js +3 -3
- package/dist/src/codemodel/types.js.map +1 -1
- package/dist/src/tcgcadapter/adapter.d.ts +1 -0
- package/dist/src/tcgcadapter/adapter.d.ts.map +1 -1
- package/dist/src/tcgcadapter/adapter.js +62 -27
- package/dist/src/tcgcadapter/adapter.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/codemodel/types.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAE/F,OAAO,EAAS,eAAe,EAAE,MAAM,YAAY,CAAC;AAsRpD,gEAAgE;AAChE,MAAM,CAAN,IAAY,eAQX;AARD,WAAY,eAAe;IACzB,mEAAe,CAAA;IAEf,2DAA2D;IAC3D,+DAAa,CAAA;IAEb,6DAA6D;IAC7D,qGAAgC,CAAA;AAClC,CAAC,EARW,eAAe,KAAf,eAAe,QAQ1B;AAED,2DAA2D;AAC3D,MAAM,CAAN,IAAY,UAQX;AARD,WAAY,UAAU;IACpB,yDAAe,CAAA;IAEf,yCAAyC;IACzC,6CAAS,CAAA;IAET,4CAA4C;IAC5C,+CAAU,CAAA;AACZ,CAAC,EARW,UAAU,KAAV,UAAU,QAQrB;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/codemodel/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -72,6 +72,7 @@ export declare class Adapter {
|
|
|
72
72
|
*
|
|
73
73
|
* @param model the tcgc model to convert
|
|
74
74
|
* @param stack is a stack of model type names used to detect recursive type definitions
|
|
75
|
+
* @param modelName optional parameter to override model name
|
|
75
76
|
* @returns a Rust model
|
|
76
77
|
*/
|
|
77
78
|
private getModel;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/tcgcadapter/adapter.ts"],"names":[],"mappings":"AASA,OAAO,
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/tcgcadapter/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@ import * as naming from './naming.js';
|
|
|
11
11
|
import * as shared from '../shared/shared.js';
|
|
12
12
|
import * as tcgc from '@azure-tools/typespec-client-generator-core';
|
|
13
13
|
import * as rust from '../codemodel/index.js';
|
|
14
|
+
import { FinalStateValue } from "@azure-tools/typespec-azure-core";
|
|
14
15
|
/**
|
|
15
16
|
* AdapterError is thrown when the emitter fails to convert part of the tcgc code
|
|
16
17
|
* model to the emitter code model. this could be due to the emitter not supporting
|
|
@@ -198,14 +199,16 @@ export class Adapter {
|
|
|
198
199
|
*
|
|
199
200
|
* @param model the tcgc model to convert
|
|
200
201
|
* @param stack is a stack of model type names used to detect recursive type definitions
|
|
202
|
+
* @param modelName optional parameter to override model name
|
|
201
203
|
* @returns a Rust model
|
|
202
204
|
*/
|
|
203
|
-
getModel(model, stack) {
|
|
205
|
+
getModel(model, stack, modelName) {
|
|
204
206
|
var _a, _b, _c, _d;
|
|
205
|
-
|
|
207
|
+
modelName = modelName !== null && modelName !== void 0 ? modelName : model.name;
|
|
208
|
+
if (modelName.length === 0) {
|
|
206
209
|
throw new AdapterError('InternalError', 'unnamed model', (_a = model.__raw) === null || _a === void 0 ? void 0 : _a.node); // TODO: this might no longer be an issue
|
|
207
210
|
}
|
|
208
|
-
|
|
211
|
+
modelName = codegen.capitalize(modelName);
|
|
209
212
|
let rustModel = this.types.get(modelName);
|
|
210
213
|
if (rustModel) {
|
|
211
214
|
return rustModel;
|
|
@@ -1130,7 +1133,7 @@ export class Adapter {
|
|
|
1130
1133
|
* @param rustClient the client to which the method belongs
|
|
1131
1134
|
*/
|
|
1132
1135
|
adaptMethod(method, rustClient) {
|
|
1133
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
|
|
1136
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
|
|
1134
1137
|
let srcMethodName = method.name;
|
|
1135
1138
|
if (method.kind === 'paging' && !srcMethodName.match(/^list/i)) {
|
|
1136
1139
|
const chunks = codegen.deconstruct(srcMethodName);
|
|
@@ -1162,17 +1165,21 @@ export class Adapter {
|
|
|
1162
1165
|
const methodOptionsStruct = new rust.Struct(`${rustClient.name}${codegen.pascalCase(srcMethodName, false)}Options`, 'pub');
|
|
1163
1166
|
methodOptionsStruct.lifetime = optionsLifetime;
|
|
1164
1167
|
methodOptionsStruct.docs.summary = `Options to be passed to ${this.asDocLink(`${rustClient.name}::${methodName}()`, `crate::generated::clients::${rustClient.name}::${methodName}()`)}`;
|
|
1165
|
-
|
|
1168
|
+
let clientMethodOptions;
|
|
1169
|
+
switch (method.kind) {
|
|
1170
|
+
case 'paging':
|
|
1171
|
+
clientMethodOptions = new rust.ExternalType(this.crate, 'PagerOptions', 'azure_core::http::pager');
|
|
1172
|
+
break;
|
|
1173
|
+
case 'lro':
|
|
1174
|
+
clientMethodOptions = new rust.ExternalType(this.crate, 'PollerOptions', 'azure_core::http::poller');
|
|
1175
|
+
break;
|
|
1176
|
+
default:
|
|
1177
|
+
clientMethodOptions = new rust.ExternalType(this.crate, 'ClientMethodOptions', 'azure_core::http');
|
|
1178
|
+
}
|
|
1166
1179
|
clientMethodOptions.lifetime = optionsLifetime;
|
|
1167
1180
|
const methodOptionsField = new rust.StructField('method_options', 'pub', clientMethodOptions);
|
|
1168
1181
|
methodOptionsField.docs.summary = 'Allows customization of the method call.';
|
|
1169
1182
|
methodOptionsStruct.fields.push(methodOptionsField);
|
|
1170
|
-
if (method.kind === 'lro') {
|
|
1171
|
-
const pollerOptions = new rust.ExternalType(this.crate, 'PollerOptions', 'azure_core::http::poller');
|
|
1172
|
-
const pollerOptionsField = new rust.StructField('poller_options', 'pub', pollerOptions);
|
|
1173
|
-
pollerOptionsField.docs.summary = 'Allows customization of the [`Poller`](azure_core::http::poller::Poller).';
|
|
1174
|
-
methodOptionsStruct.fields.push(pollerOptionsField);
|
|
1175
|
-
}
|
|
1176
1183
|
const pub = method.access === 'public' ? 'pub' : 'pubCrate';
|
|
1177
1184
|
const methodOptions = new rust.MethodOptions(methodOptionsStruct);
|
|
1178
1185
|
const httpMethod = method.operation.verb;
|
|
@@ -1185,10 +1192,29 @@ export class Adapter {
|
|
|
1185
1192
|
rustMethod = new rust.PageableMethod(methodName, languageIndependentName, rustClient, pub, methodOptions, httpMethod, method.operation.path);
|
|
1186
1193
|
break;
|
|
1187
1194
|
case 'lro':
|
|
1188
|
-
|
|
1195
|
+
{
|
|
1196
|
+
let lroFinalResultStrategy = new rust.LroFinalResultStrategyOriginalUri();
|
|
1197
|
+
if (method.lroMetadata.finalStateVia !== FinalStateValue.originalUri) {
|
|
1198
|
+
switch (method.lroMetadata.finalStateVia) {
|
|
1199
|
+
case FinalStateValue.operationLocation:
|
|
1200
|
+
lroFinalResultStrategy = new rust.LroFinalResultStrategyHeader('operation-location');
|
|
1201
|
+
break;
|
|
1202
|
+
case FinalStateValue.location:
|
|
1203
|
+
lroFinalResultStrategy = new rust.LroFinalResultStrategyHeader('location');
|
|
1204
|
+
break;
|
|
1205
|
+
case FinalStateValue.azureAsyncOperation:
|
|
1206
|
+
lroFinalResultStrategy = new rust.LroFinalResultStrategyHeader('azure-asyncoperation');
|
|
1207
|
+
break;
|
|
1208
|
+
default:
|
|
1209
|
+
throw new AdapterError('UnsupportedTsp', `lroMetadata.finalStateVia ${method.lroMetadata.finalStateVia} NYI`, (_d = method.__raw) === null || _d === void 0 ? void 0 : _d.node);
|
|
1210
|
+
}
|
|
1211
|
+
lroFinalResultStrategy.propertyName = method.lroMetadata.finalResultPath;
|
|
1212
|
+
}
|
|
1213
|
+
rustMethod = new rust.LroMethod(methodName, languageIndependentName, rustClient, pub, methodOptions, httpMethod, method.operation.path, lroFinalResultStrategy);
|
|
1214
|
+
}
|
|
1189
1215
|
break;
|
|
1190
1216
|
default:
|
|
1191
|
-
throw new AdapterError('UnsupportedTsp', `method kind ${method.kind} NYI`, (
|
|
1217
|
+
throw new AdapterError('UnsupportedTsp', `method kind ${method.kind} NYI`, (_e = method.__raw) === null || _e === void 0 ? void 0 : _e.node);
|
|
1192
1218
|
}
|
|
1193
1219
|
rustMethod.docs = this.adaptDocs(method.summary, method.doc);
|
|
1194
1220
|
rustClient.methods.push(rustMethod);
|
|
@@ -1211,7 +1237,7 @@ export class Adapter {
|
|
|
1211
1237
|
}).any();
|
|
1212
1238
|
}).first();
|
|
1213
1239
|
if (!opParam) {
|
|
1214
|
-
throw new AdapterError('InternalError', `didn't find operation parameter for method ${method.name} parameter ${param.name}`, (
|
|
1240
|
+
throw new AdapterError('InternalError', `didn't find operation parameter for method ${method.name} parameter ${param.name}`, (_f = param.__raw) === null || _f === void 0 ? void 0 : _f.node);
|
|
1215
1241
|
}
|
|
1216
1242
|
if (opParam.kind === 'header' && opParam.serializedName.toLowerCase() === 'x-ms-client-request-id') {
|
|
1217
1243
|
// x-ms-client-request-id is automatically inserted into requests via
|
|
@@ -1340,16 +1366,16 @@ export class Adapter {
|
|
|
1340
1366
|
const responseFormat = getResponseFormat();
|
|
1341
1367
|
if (method.kind === 'paging') {
|
|
1342
1368
|
if (responseFormat === 'NoFormat') {
|
|
1343
|
-
throw new AdapterError('InternalError', `paged method ${method.name} unexpected response format ${responseFormat}`, (
|
|
1369
|
+
throw new AdapterError('InternalError', `paged method ${method.name} unexpected response format ${responseFormat}`, (_g = method.__raw) === null || _g === void 0 ? void 0 : _g.node);
|
|
1344
1370
|
}
|
|
1345
1371
|
// for paged methods, tcgc models method.response.type as an Array<T>.
|
|
1346
1372
|
// however, we want the synthesized paged response envelope type instead.
|
|
1347
1373
|
const synthesizedType = method.operation.responses[0].type;
|
|
1348
1374
|
if (!synthesizedType) {
|
|
1349
|
-
throw new AdapterError('InternalError', `paged method ${method.name} has no synthesized response type`, (
|
|
1375
|
+
throw new AdapterError('InternalError', `paged method ${method.name} has no synthesized response type`, (_h = method.__raw) === null || _h === void 0 ? void 0 : _h.node);
|
|
1350
1376
|
}
|
|
1351
1377
|
else if (synthesizedType.kind !== 'model') {
|
|
1352
|
-
throw new AdapterError('UnsupportedTsp', `paged method ${method.name} synthesized response type has unexpected kind ${synthesizedType.kind}`, (
|
|
1378
|
+
throw new AdapterError('UnsupportedTsp', `paged method ${method.name} synthesized response type has unexpected kind ${synthesizedType.kind}`, (_j = method.__raw) === null || _j === void 0 ? void 0 : _j.node);
|
|
1353
1379
|
}
|
|
1354
1380
|
const synthesizedModel = this.getModel(synthesizedType, new Array());
|
|
1355
1381
|
if (!this.crate.models.includes(synthesizedModel)) {
|
|
@@ -1357,7 +1383,7 @@ export class Adapter {
|
|
|
1357
1383
|
}
|
|
1358
1384
|
// for the pager response type, remove the Option<T> around the Vec<T> for the page items
|
|
1359
1385
|
if (!method.pagingMetadata.pageItemsSegments) {
|
|
1360
|
-
throw new AdapterError('InternalError', `paged method ${method.name} has no pageItemsSegments`, (
|
|
1386
|
+
throw new AdapterError('InternalError', `paged method ${method.name} has no pageItemsSegments`, (_k = method.__raw) === null || _k === void 0 ? void 0 : _k.node);
|
|
1361
1387
|
}
|
|
1362
1388
|
// unwrap all of the segments for the paged response
|
|
1363
1389
|
let unwrappedCount = 0;
|
|
@@ -1368,13 +1394,13 @@ export class Adapter {
|
|
|
1368
1394
|
switch (responseFormat) {
|
|
1369
1395
|
case 'JsonFormat':
|
|
1370
1396
|
if (segment.kind !== 'property' || !segment.serializationOptions.json) {
|
|
1371
|
-
throw new AdapterError('InternalError', `paged method ${method.name} is missing JSON serialization data`, (
|
|
1397
|
+
throw new AdapterError('InternalError', `paged method ${method.name} is missing JSON serialization data`, (_l = method.__raw) === null || _l === void 0 ? void 0 : _l.node);
|
|
1372
1398
|
}
|
|
1373
1399
|
serde = segment.serializationOptions.json.name;
|
|
1374
1400
|
break;
|
|
1375
1401
|
case 'XmlFormat':
|
|
1376
1402
|
if (segment.kind !== 'property' || !segment.serializationOptions.xml) {
|
|
1377
|
-
throw new AdapterError('InternalError', `paged method ${method.name} is missing XML serialization data`, (
|
|
1403
|
+
throw new AdapterError('InternalError', `paged method ${method.name} is missing XML serialization data`, (_m = method.__raw) === null || _m === void 0 ? void 0 : _m.node);
|
|
1378
1404
|
}
|
|
1379
1405
|
serde = segment.serializationOptions.xml.name;
|
|
1380
1406
|
break;
|
|
@@ -1400,16 +1426,16 @@ export class Adapter {
|
|
|
1400
1426
|
}
|
|
1401
1427
|
}
|
|
1402
1428
|
if (unwrappedCount !== method.pagingMetadata.pageItemsSegments.length) {
|
|
1403
|
-
throw new AdapterError('InternalError', `failed to unwrap paged items for method ${method.name}`, (
|
|
1429
|
+
throw new AdapterError('InternalError', `failed to unwrap paged items for method ${method.name}`, (_o = method.__raw) === null || _o === void 0 ? void 0 : _o.node);
|
|
1404
1430
|
}
|
|
1405
1431
|
this.crate.addDependency(new rust.CrateDependency('async-trait'));
|
|
1406
1432
|
rustMethod.returns = new rust.Result(this.crate, new rust.Pager(this.crate, new rust.Response(this.crate, synthesizedModel, responseFormat)));
|
|
1407
1433
|
}
|
|
1408
1434
|
else if (method.kind === 'lro') {
|
|
1409
1435
|
const format = responseFormat === 'NoFormat' ? 'JsonFormat' : responseFormat;
|
|
1410
|
-
const
|
|
1411
|
-
if (
|
|
1412
|
-
throw new AdapterError('InternalError', `
|
|
1436
|
+
const statusType = this.typeToWireType(this.getModel(method.lroMetadata.pollingInfo.responseModel, undefined, `${rustClient.name}${codegen.pascalCase(rustMethod.name, false)}OperationStatus`));
|
|
1437
|
+
if (statusType.kind !== 'model') {
|
|
1438
|
+
throw new AdapterError('InternalError', `status type for an LRO method '${method.name}' is not a model`, (_p = method.__raw) === null || _p === void 0 ? void 0 : _p.node);
|
|
1413
1439
|
}
|
|
1414
1440
|
const pushModels = (model, crate) => {
|
|
1415
1441
|
if (crate.models.some(m => m === model)) {
|
|
@@ -1425,8 +1451,17 @@ export class Adapter {
|
|
|
1425
1451
|
}
|
|
1426
1452
|
}
|
|
1427
1453
|
};
|
|
1428
|
-
pushModels(
|
|
1429
|
-
|
|
1454
|
+
pushModels(statusType, this.crate);
|
|
1455
|
+
const poller = new rust.Poller(this.crate, new rust.Response(this.crate, statusType, format));
|
|
1456
|
+
if (((_q = method.response.type) === null || _q === void 0 ? void 0 : _q.kind) === "model") {
|
|
1457
|
+
const responseType = this.typeToWireType(this.getModel(method.response.type));
|
|
1458
|
+
if (responseType.kind !== 'model') {
|
|
1459
|
+
throw new AdapterError('InternalError', `response type for an LRO method '${method.name}' is not a model`, (_r = method.__raw) === null || _r === void 0 ? void 0 : _r.node);
|
|
1460
|
+
}
|
|
1461
|
+
pushModels(responseType, this.crate);
|
|
1462
|
+
poller.resultType = new rust.Response(this.crate, responseType, format);
|
|
1463
|
+
}
|
|
1464
|
+
rustMethod.returns = new rust.Result(this.crate, poller);
|
|
1430
1465
|
}
|
|
1431
1466
|
else if (method.response.type && !(method.response.type.kind === 'bytes' && method.response.type.encode === 'bytes')) {
|
|
1432
1467
|
const response = new rust.Response(this.crate, this.typeToWireType(this.getType(method.response.type)), responseFormat);
|
|
@@ -1470,7 +1505,7 @@ export class Adapter {
|
|
|
1470
1505
|
// can't do this until the method has been completely adapted
|
|
1471
1506
|
const pageableMethod = rustMethod;
|
|
1472
1507
|
pageableMethod.strategy = this.adaptPageableMethodStrategy(method, paramsMap, responseHeadersMap);
|
|
1473
|
-
if (((
|
|
1508
|
+
if (((_s = pageableMethod.strategy) === null || _s === void 0 ? void 0 : _s.kind) === 'nextLink') {
|
|
1474
1509
|
pageableMethod.strategy.reinjectedParams = this.adaptPageableMethodReinjectionParams(method, paramsMap);
|
|
1475
1510
|
}
|
|
1476
1511
|
}
|