@azure-tools/typespec-rust 0.25.0 → 0.27.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 +127 -45
- 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/enums.js +117 -5
- package/dist/src/codegen/enums.js.map +1 -1
- package/dist/src/codegen/helpers.js +1 -1
- package/dist/src/codegen/helpers.js.map +1 -1
- package/dist/src/codegen/models.js +22 -18
- 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 +13 -5
- package/dist/src/codemodel/types.d.ts.map +1 -1
- package/dist/src/codemodel/types.js +6 -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 +95 -28
- package/dist/src/tcgcadapter/adapter.js.map +1 -1
- package/package.json +1 -1
|
@@ -296,8 +296,8 @@ function getMethodOptions(crate) {
|
|
|
296
296
|
body += `${indent.push().get()}${method.options.type.name} {\n`;
|
|
297
297
|
indent.push();
|
|
298
298
|
for (const field of method.options.type.fields) {
|
|
299
|
-
if (
|
|
300
|
-
body += `${indent.get()}${field.name}:
|
|
299
|
+
if (field.type.kind === 'external' && (field.type.name === 'ClientMethodOptions' || field.type.name === 'PagerOptions')) {
|
|
300
|
+
body += `${indent.get()}${field.name}: ${field.type.name} {\n`;
|
|
301
301
|
body += `${indent.push().get()}context: self.${field.name}.context.into_owned(),\n`;
|
|
302
302
|
body += `${indent.pop().get()}},\n`;
|
|
303
303
|
continue;
|
|
@@ -485,12 +485,12 @@ function getAuthPolicy(ctor, use) {
|
|
|
485
485
|
for (const param of ctor.params) {
|
|
486
486
|
const arcTokenCred = shared.asTypeOf(param.type, 'tokenCredential', 'arc');
|
|
487
487
|
if (arcTokenCred) {
|
|
488
|
-
use.add('azure_core::http::policies', '
|
|
488
|
+
use.add('azure_core::http::policies', 'BearerTokenAuthorizationPolicy', 'Policy');
|
|
489
489
|
const scopes = new Array();
|
|
490
490
|
for (const scope of arcTokenCred.scopes) {
|
|
491
491
|
scopes.push(`"${scope}"`);
|
|
492
492
|
}
|
|
493
|
-
return `let auth_policy: Arc<dyn Policy> = Arc::new(
|
|
493
|
+
return `let auth_policy: Arc<dyn Policy> = Arc::new(BearerTokenAuthorizationPolicy::new(credential, vec![${scopes.join(', ')}]));`;
|
|
494
494
|
}
|
|
495
495
|
}
|
|
496
496
|
return undefined;
|
|
@@ -1104,7 +1104,7 @@ function getPageableMethodBody(indent, use, client, method) {
|
|
|
1104
1104
|
switch (method.strategy.kind) {
|
|
1105
1105
|
case 'continuationToken': {
|
|
1106
1106
|
const reqTokenParam = method.strategy.requestToken.name;
|
|
1107
|
-
body += `${indent.get()}Ok(${method.returns.type.name}::from_callback(move |${reqTokenParam}: PagerState<String
|
|
1107
|
+
body += `${indent.get()}Ok(${method.returns.type.name}::from_callback(move |${reqTokenParam}: PagerState<String>, ctx| {\n`;
|
|
1108
1108
|
body += `${indent.push().get()}let ${method.strategy.requestToken.kind === 'queryScalar' ? 'mut ' : ''}url = first_url.clone();\n`;
|
|
1109
1109
|
if (method.strategy.requestToken.kind === 'queryScalar') {
|
|
1110
1110
|
// if the url already contains the token query param,
|
|
@@ -1134,7 +1134,7 @@ function getPageableMethodBody(indent, use, client, method) {
|
|
|
1134
1134
|
case 'nextLink': {
|
|
1135
1135
|
const nextLinkName = method.strategy.nextLinkPath[method.strategy.nextLinkPath.length - 1].name;
|
|
1136
1136
|
const reinjectedParams = method.strategy.reinjectedParams;
|
|
1137
|
-
body += `${indent.get()}Ok(${method.returns.type.name}::from_callback(move |${nextLinkName}: PagerState<Url
|
|
1137
|
+
body += `${indent.get()}Ok(${method.returns.type.name}::from_callback(move |${nextLinkName}: PagerState<Url>, ctx| {\n`;
|
|
1138
1138
|
body += `${indent.push().get()}let url = ` + helpers.buildMatch(indent, nextLinkName, [{
|
|
1139
1139
|
pattern: `PagerState::More(${nextLinkName})`,
|
|
1140
1140
|
body: (indent) => {
|
|
@@ -1175,7 +1175,7 @@ function getPageableMethodBody(indent, use, client, method) {
|
|
|
1175
1175
|
}
|
|
1176
1176
|
else {
|
|
1177
1177
|
// no next link when there's no strategy
|
|
1178
|
-
body += `${indent.get()}Ok(Pager::from_callback(move |_: PagerState<Url
|
|
1178
|
+
body += `${indent.get()}Ok(Pager::from_callback(move |_: PagerState<Url>, ctx| {\n`;
|
|
1179
1179
|
indent.push();
|
|
1180
1180
|
cloneUrl = true;
|
|
1181
1181
|
srcUrlVar = urlVar;
|
|
@@ -1193,7 +1193,6 @@ function getPageableMethodBody(indent, use, client, method) {
|
|
|
1193
1193
|
}
|
|
1194
1194
|
const requestResult = constructRequest(indent, use, method, paramGroups, true, srcUrlVar, cloneUrl);
|
|
1195
1195
|
body += requestResult.content;
|
|
1196
|
-
body += `${indent.get()}let ctx = options.method_options.context.clone();\n`;
|
|
1197
1196
|
body += `${indent.get()}let pipeline = pipeline.clone();\n`;
|
|
1198
1197
|
body += `${indent.get()}async move {\n`;
|
|
1199
1198
|
body += `${indent.push().get()}let rsp${rspType} = pipeline.send(&ctx, &mut ${requestResult.requestVarName}, ${getPipelineOptions(indent, use, method)}).await?${rspInto};\n`;
|
|
@@ -1271,7 +1270,8 @@ function getPageableMethodBody(indent, use, client, method) {
|
|
|
1271
1270
|
body += `${indent.get()}Ok(PagerResult::Done { response: rsp.into() })\n`;
|
|
1272
1271
|
}
|
|
1273
1272
|
body += `${indent.pop().get()}}\n`; // end async move
|
|
1274
|
-
body += `${indent.
|
|
1273
|
+
body += `${indent.get()}},\n${indent.get()}Some(options.method_options),\n`; // end move
|
|
1274
|
+
body += `${indent.pop().get()}))`; // end Ok/Pager::from_callback
|
|
1275
1275
|
return body;
|
|
1276
1276
|
}
|
|
1277
1277
|
/**
|
|
@@ -1284,10 +1284,18 @@ function getPageableMethodBody(indent, use, client, method) {
|
|
|
1284
1284
|
* @returns the contents of the method body
|
|
1285
1285
|
*/
|
|
1286
1286
|
function getLroMethodBody(indent, use, client, method) {
|
|
1287
|
+
var _a, _b;
|
|
1288
|
+
const pollingStepHeaderName = ((_a = method.responseHeaders) === null || _a === void 0 ? void 0 : _a.headers.some(h => h.header.toLowerCase() === 'operation-location'))
|
|
1289
|
+
? 'operation-location'
|
|
1290
|
+
: ((_b = method.responseHeaders) === null || _b === void 0 ? void 0 : _b.headers.some(h => h.header.toLowerCase() === 'azure-asyncoperation'))
|
|
1291
|
+
? 'azure-asyncoperation' : undefined;
|
|
1287
1292
|
const bodyFormat = helpers.convertResponseFormat(method.returns.type.type.format);
|
|
1288
1293
|
use.add('azure_core::http', 'Method', 'RawResponse', 'Request', 'Url');
|
|
1289
1294
|
use.add('azure_core::http::headers', 'RETRY_AFTER', 'X_MS_RETRY_AFTER_MS', 'RETRY_AFTER_MS');
|
|
1290
1295
|
use.add('azure_core::http::poller', 'get_retry_after', 'PollerResult', 'PollerState', 'PollerStatus', 'StatusMonitor as _');
|
|
1296
|
+
if (pollingStepHeaderName !== undefined || method.finalResultStrategy.kind !== 'originalUri') {
|
|
1297
|
+
use.add('azure_core::http::headers', 'HeaderName');
|
|
1298
|
+
}
|
|
1291
1299
|
use.addForType(method.returns.type);
|
|
1292
1300
|
use.addForType(helpers.unwrapType(method.returns.type));
|
|
1293
1301
|
const paramGroups = getMethodParamGroup(method);
|
|
@@ -1301,34 +1309,57 @@ function getLroMethodBody(indent, use, client, method) {
|
|
|
1301
1309
|
}
|
|
1302
1310
|
// we call this eagerly so that we have access to the request var name
|
|
1303
1311
|
const initialRequestResult = constructRequest(indent, use, method, paramGroups, true, urlVar, true, false);
|
|
1312
|
+
const applyApiVersionParam = function (indent, paramGroups, newLinkVarName, existingLinkVarAccessor) {
|
|
1313
|
+
var _a;
|
|
1314
|
+
if (((_a = paramGroups.apiVersion) === null || _a === void 0 ? void 0 : _a.kind) === 'queryScalar') {
|
|
1315
|
+
return `${indent.get()}let qp = ${existingLinkVarAccessor}.query_pairs().filter(|(name, _)| name.ne("${paramGroups.apiVersion.key}"));\n`
|
|
1316
|
+
+ `${indent.get()}let mut ${newLinkVarName} = ${existingLinkVarAccessor}.clone();\n`
|
|
1317
|
+
+ `${indent.get()}${newLinkVarName}.query_pairs_mut().clear().extend_pairs(qp).append_pair("${paramGroups.apiVersion.key}", &${paramGroups.apiVersion.name});\n`;
|
|
1318
|
+
}
|
|
1319
|
+
return '';
|
|
1320
|
+
};
|
|
1321
|
+
const declareRequest = function (indent, use, method, paramGroups, requestVarName, linkVarName, forceMut) {
|
|
1322
|
+
let mutRequest = '';
|
|
1323
|
+
// if the only header is optional Content-Type it will not be used
|
|
1324
|
+
// by applyHeaderParams() in this case so don't make request mutable
|
|
1325
|
+
if (forceMut || paramGroups.header.length > 1 || (paramGroups.header.length === 1 && !isOptionalContentTypeHeader(paramGroups.header[0]))) {
|
|
1326
|
+
mutRequest = 'mut ';
|
|
1327
|
+
}
|
|
1328
|
+
return `${indent.get()}let ${mutRequest}${requestVarName} = Request::new(${linkVarName}.clone(), Method::Get);\n`
|
|
1329
|
+
+ applyHeaderParams(indent, use, method, paramGroups, true, requestVarName);
|
|
1330
|
+
};
|
|
1331
|
+
let stateVarName = 'next_link';
|
|
1332
|
+
let stateVarType = 'Url';
|
|
1333
|
+
let progressVarName = 'next_link';
|
|
1334
|
+
let stateNextLinkAccessor = 'next_link';
|
|
1335
|
+
let pollerStateMoreReturn = 'next_link';
|
|
1336
|
+
let pollerStateInitialReturn = 'url.clone()';
|
|
1337
|
+
let pollerStatusInProgressReturn = 'next_link';
|
|
1338
|
+
if (method.finalResultStrategy.kind === 'originalUri') {
|
|
1339
|
+
body += `${indent.get()}struct Progress{ next_link: Url, first_rsp: Option<RawResponse>, }`;
|
|
1340
|
+
body += `${indent.get()}impl AsRef<str> for Progress{ fn as_ref(&self) -> &str{ self.next_link.as_ref() }}\n`;
|
|
1341
|
+
stateVarName = 'state';
|
|
1342
|
+
stateVarType = 'Progress';
|
|
1343
|
+
progressVarName = 'progress';
|
|
1344
|
+
stateNextLinkAccessor = 'progress.next_link';
|
|
1345
|
+
pollerStateMoreReturn = 'Progress{next_link, first_rsp: progress.first_rsp}';
|
|
1346
|
+
pollerStateInitialReturn = 'Progress{next_link: url.clone(), first_rsp: None}';
|
|
1347
|
+
pollerStatusInProgressReturn = 'Progress{next_link, first_rsp}';
|
|
1348
|
+
}
|
|
1304
1349
|
body += `${indent.get()}Ok(${method.returns.type.name}::from_callback(\n`;
|
|
1305
|
-
body += `${indent.push().get()}move
|
|
1306
|
-
body += `${indent.push().get()}let (mut ${initialRequestResult.requestVarName},
|
|
1307
|
-
pattern: `PollerState::More(
|
|
1350
|
+
body += `${indent.push().get()}move |${stateVarName}: PollerState<${stateVarType}>| {\n`;
|
|
1351
|
+
body += `${indent.push().get()}let (mut ${initialRequestResult.requestVarName}, ${progressVarName}) = ${helpers.buildMatch(indent, stateVarName, [{
|
|
1352
|
+
pattern: `PollerState::More(${progressVarName})`,
|
|
1308
1353
|
body: (indent) => {
|
|
1309
|
-
|
|
1310
|
-
|
|
1311
|
-
|
|
1312
|
-
body += `${indent.get()}let qp = next_link.query_pairs().filter(|(name, _)| name.ne("${paramGroups.apiVersion.key}"));\n`;
|
|
1313
|
-
body += `${indent.get()}let mut next_link = next_link.clone();\n`;
|
|
1314
|
-
body += `${indent.get()}next_link.query_pairs_mut().clear().extend_pairs(qp).append_pair("${paramGroups.apiVersion.key}", &${paramGroups.apiVersion.name});\n`;
|
|
1315
|
-
}
|
|
1316
|
-
let mutRequest = '';
|
|
1317
|
-
// if the only header is optional Content-Type it will not be used
|
|
1318
|
-
// by applyHeaderParams() in this case so don't make request mutable
|
|
1319
|
-
if (paramGroups.header.length > 1 || (paramGroups.header.length === 1 && !isOptionalContentTypeHeader(paramGroups.header[0]))) {
|
|
1320
|
-
mutRequest = 'mut ';
|
|
1321
|
-
}
|
|
1322
|
-
body += `${indent.get()}let ${mutRequest}${initialRequestResult.requestVarName} = Request::new(next_link.clone(), Method::Get);\n`;
|
|
1323
|
-
body += applyHeaderParams(indent, use, method, paramGroups, true, initialRequestResult.requestVarName);
|
|
1324
|
-
body += `${indent.get()}(${initialRequestResult.requestVarName}, next_link)\n`;
|
|
1325
|
-
return body;
|
|
1354
|
+
return applyApiVersionParam(indent, paramGroups, 'next_link', stateNextLinkAccessor)
|
|
1355
|
+
+ declareRequest(indent, use, method, paramGroups, initialRequestResult.requestVarName, 'next_link')
|
|
1356
|
+
+ `${indent.get()}(${initialRequestResult.requestVarName}, ${pollerStateMoreReturn})\n`;
|
|
1326
1357
|
},
|
|
1327
1358
|
}, {
|
|
1328
1359
|
pattern: 'PollerState::Initial',
|
|
1329
1360
|
body: (indent) => {
|
|
1330
1361
|
let body = initialRequestResult.content;
|
|
1331
|
-
body += `${indent.get()}(${initialRequestResult.requestVarName},
|
|
1362
|
+
body += `${indent.get()}(${initialRequestResult.requestVarName}, ${pollerStateInitialReturn})\n`;
|
|
1332
1363
|
return body;
|
|
1333
1364
|
},
|
|
1334
1365
|
}])};\n`;
|
|
@@ -1337,24 +1368,80 @@ function getLroMethodBody(indent, use, client, method) {
|
|
|
1337
1368
|
body += `${indent.get()}async move {\n`;
|
|
1338
1369
|
body += `${indent.push().get()}let rsp = pipeline.send(&ctx, &mut ${initialRequestResult.requestVarName}, ${getPipelineOptions(indent, use, method)}).await?;\n`;
|
|
1339
1370
|
body += `${indent.get()}let (status, headers, body) = rsp.deconstruct();\n`;
|
|
1371
|
+
if (pollingStepHeaderName !== undefined) {
|
|
1372
|
+
body += `${indent.get()}let next_link = ${helpers.buildMatch(indent, `headers.get_optional_string(&HeaderName::from_static("${pollingStepHeaderName}"))`, [{
|
|
1373
|
+
pattern: `Some(operation_location)`,
|
|
1374
|
+
body: (indent) => {
|
|
1375
|
+
return `${indent.get()}Url::parse(&operation_location)?\n`;
|
|
1376
|
+
}
|
|
1377
|
+
}, {
|
|
1378
|
+
pattern: 'None',
|
|
1379
|
+
body: (indent) => {
|
|
1380
|
+
return `${indent.get()}${stateNextLinkAccessor}`;
|
|
1381
|
+
}
|
|
1382
|
+
}])};\n`;
|
|
1383
|
+
}
|
|
1384
|
+
let resultRspVarName = 'first_rsp';
|
|
1385
|
+
if (method.finalResultStrategy.kind === 'header' && method.finalResultStrategy.headerName !== pollingStepHeaderName) { // separate link for picking up the result
|
|
1386
|
+
body += `${indent.get()}let final_link = Url::parse(headers.get_str(&HeaderName::from_static("${method.finalResultStrategy.headerName}"))?)?;\n`;
|
|
1387
|
+
}
|
|
1388
|
+
else if (method.finalResultStrategy.kind === 'originalUri') { // result available via original request immediately
|
|
1389
|
+
resultRspVarName = 'first_rsp';
|
|
1390
|
+
body += `${indent.get()}let mut ${resultRspVarName} = progress.first_rsp;\n`;
|
|
1391
|
+
body += `${indent.get()}if first_rsp.is_none() { ${resultRspVarName} = Some(RawResponse::from_bytes(status, headers.clone(), body.clone())); }\n`;
|
|
1392
|
+
}
|
|
1340
1393
|
body += `${indent.get()}let retry_after = get_retry_after(&headers, &[X_MS_RETRY_AFTER_MS, RETRY_AFTER_MS, RETRY_AFTER], &options.poller_options);\n`;
|
|
1341
1394
|
const deserialize = `${bodyFormat}::from_${bodyFormat}`;
|
|
1342
1395
|
use.add('azure_core', bodyFormat);
|
|
1343
1396
|
body += `${indent.get()}let res: ${helpers.getTypeDeclaration(helpers.unwrapType(method.returns.type))} = ${deserialize}(&body)?;\n`;
|
|
1397
|
+
if (method.finalResultStrategy.kind === 'header' && method.finalResultStrategy.headerName === pollingStepHeaderName) { // result available at the poll step link when finished
|
|
1398
|
+
resultRspVarName = 'final_rsp';
|
|
1399
|
+
body += `${indent.get()}let mut ${resultRspVarName} = None;\n`;
|
|
1400
|
+
body += `${indent.get()}if res.status() == PollerStatus::Succeeded {\n`;
|
|
1401
|
+
indent.push();
|
|
1402
|
+
let responseBodyExpr = 'body.clone()';
|
|
1403
|
+
if (method.finalResultStrategy.propertyName !== undefined) {
|
|
1404
|
+
responseBodyExpr = 'body';
|
|
1405
|
+
body += `${indent.get()}let ${responseBodyExpr} = azure_core::http::response::ResponseBody::from_bytes(`
|
|
1406
|
+
+ `serde_json::from_str::<serde_json::Value>(body.clone().into_string()?.as_str())?["${method.finalResultStrategy.propertyName}"].to_string());\n`;
|
|
1407
|
+
}
|
|
1408
|
+
body += `${indent.get()}${resultRspVarName} = Some(RawResponse::from_bytes(status, headers.clone(), ${responseBodyExpr}));\n`;
|
|
1409
|
+
body += `${indent.pop().get()}}\n`;
|
|
1410
|
+
}
|
|
1344
1411
|
body += `${indent.get()}let rsp = RawResponse::from_bytes(status, headers, body).into();\n`;
|
|
1345
|
-
|
|
1412
|
+
const arms = [{
|
|
1346
1413
|
pattern: `PollerStatus::InProgress`,
|
|
1347
1414
|
body: (indent) => {
|
|
1348
|
-
return `${indent.get()}response: rsp, retry_after, next:
|
|
1415
|
+
return `${indent.get()}response: rsp, retry_after, next: ${pollerStatusInProgressReturn}\n`;
|
|
1349
1416
|
},
|
|
1350
1417
|
returns: 'PollerResult::InProgress'
|
|
1351
|
-
}
|
|
1352
|
-
|
|
1353
|
-
|
|
1354
|
-
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
|
|
1418
|
+
}];
|
|
1419
|
+
arms.push({
|
|
1420
|
+
pattern: `PollerStatus::Succeeded`,
|
|
1421
|
+
body: (indent) => {
|
|
1422
|
+
return `{\n`
|
|
1423
|
+
+ `${indent.push().get()}PollerResult::Succeeded {\n`
|
|
1424
|
+
+ `${indent.push().get()}response: rsp,\n`
|
|
1425
|
+
+ `${indent.get()}target: Box::new(move || {\n`
|
|
1426
|
+
+ `${indent.push().get()}Box::pin(async move {\n`
|
|
1427
|
+
+ ((method.finalResultStrategy.kind === 'header' && method.finalResultStrategy.headerName !== pollingStepHeaderName)
|
|
1428
|
+
? (declareRequest(indent, use, method, paramGroups, initialRequestResult.requestVarName, 'final_link', true)
|
|
1429
|
+
+ `Ok(pipeline.send(&ctx, &mut ${initialRequestResult.requestVarName}, None).await?.into())\n`)
|
|
1430
|
+
: `Ok(${resultRspVarName}.unwrap().into())\n`)
|
|
1431
|
+
+ `${indent.pop().get()}})\n`
|
|
1432
|
+
+ `${indent.get()}}),\n`
|
|
1433
|
+
+ `${indent.pop().get()}}`
|
|
1434
|
+
+ `${indent.pop().get()}}`;
|
|
1435
|
+
}
|
|
1436
|
+
});
|
|
1437
|
+
arms.push({
|
|
1438
|
+
pattern: '_',
|
|
1439
|
+
body: (indent) => {
|
|
1440
|
+
return `${indent.get()}response: rsp`;
|
|
1441
|
+
},
|
|
1442
|
+
returns: 'PollerResult::Done'
|
|
1443
|
+
});
|
|
1444
|
+
body += `${indent.get()}Ok(${helpers.buildMatch(indent, 'res.status()', arms)})\n`;
|
|
1358
1445
|
body += `${indent.pop().get()}}\n`; // end async move
|
|
1359
1446
|
body += `${indent.pop().get()}},\n`; // end move
|
|
1360
1447
|
body += `${indent.get()}None,\n`;
|
|
@@ -1480,9 +1567,8 @@ function getHeaderPathQueryParamValue(use, param, fromSelf, neverBorrow) {
|
|
|
1480
1567
|
break;
|
|
1481
1568
|
case 'enum':
|
|
1482
1569
|
case 'scalar':
|
|
1483
|
-
if (paramType.kind === 'enum' && (param.kind === 'pathScalar' || param.kind === 'queryScalar')) {
|
|
1570
|
+
if (paramType.kind === 'enum' && (param.kind === 'pathScalar' || param.kind === 'queryScalar') && paramType.type === 'String') {
|
|
1484
1571
|
// append_pair and path.replace() want a reference to the string
|
|
1485
|
-
// TODO: https://github.com/Azure/typespec-rust/issues/25
|
|
1486
1572
|
paramValue = `${paramName}.as_ref()`;
|
|
1487
1573
|
// as_ref() elides the need to borrow
|
|
1488
1574
|
mustBorrow = false;
|
|
@@ -1547,10 +1633,6 @@ function nonCopyableType(type) {
|
|
|
1547
1633
|
return false;
|
|
1548
1634
|
}
|
|
1549
1635
|
}
|
|
1550
|
-
/** returns true if the type is the azure_core::ClientMethodOptions type */
|
|
1551
|
-
function isClientMethodOptions(type) {
|
|
1552
|
-
return type.kind === 'external' && type.name === 'ClientMethodOptions';
|
|
1553
|
-
}
|
|
1554
1636
|
/**
|
|
1555
1637
|
* returns an instantiation of pipeline options or None
|
|
1556
1638
|
* if no options are required.
|
|
@@ -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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"}
|
|
@@ -10,7 +10,8 @@ export declare class Context {
|
|
|
10
10
|
private readonly bodyFormatForModels;
|
|
11
11
|
private readonly tryFromForRequestTypes;
|
|
12
12
|
private readonly pagedResponseTypes;
|
|
13
|
-
private readonly
|
|
13
|
+
private readonly lroStatusTypes;
|
|
14
|
+
private readonly lroResultTypes;
|
|
14
15
|
/**
|
|
15
16
|
* instantiates a new Context for the provided crate
|
|
16
17
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/codegen/context.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAG9C;;;;GAIG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA8C;IAClF,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAyC;IAChF,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAyB;IAC5D,OAAO,CAAC,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/codegen/context.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAG9C;;;;GAIG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA8C;IAClF,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAyC;IAChF,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAyB;IAC5D,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAyB;IACxD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAqC;IAEpE;;;;OAIG;gBACS,KAAK,EAAE,IAAI,CAAC,KAAK;IAwE7B;;;;;;;OAOG;IACH,2BAA2B,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,GAAG,SAAS;IAyBrG;;;;;OAKG;IACH,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,WAAW;IAY1D;;;;;;;OAOG;IACH,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,GAAG,SAAS;IA2DnE;;;;;;;OAOG;IACH,2BAA2B,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,GAAG,SAAS;CAuC7E"}
|
|
@@ -21,7 +21,8 @@ export class Context {
|
|
|
21
21
|
this.bodyFormatForModels = new Map();
|
|
22
22
|
this.tryFromForRequestTypes = new Map();
|
|
23
23
|
this.pagedResponseTypes = new Set();
|
|
24
|
-
this.
|
|
24
|
+
this.lroStatusTypes = new Set();
|
|
25
|
+
this.lroResultTypes = new Map();
|
|
25
26
|
const recursiveAddBodyFormat = (type, format) => {
|
|
26
27
|
type = helpers.unwrapType(type);
|
|
27
28
|
if (type.kind !== 'model') {
|
|
@@ -52,7 +53,10 @@ export class Context {
|
|
|
52
53
|
this.pagedResponseTypes.add(method.returns.type.type.content);
|
|
53
54
|
}
|
|
54
55
|
else if (method.kind === 'lro' && method.returns.type.kind === 'poller') {
|
|
55
|
-
this.
|
|
56
|
+
this.lroStatusTypes.add(method.returns.type.type.content);
|
|
57
|
+
if (method.returns.type.resultType !== undefined) {
|
|
58
|
+
this.lroResultTypes.set(method.returns.type.type.content, method.returns.type.resultType.content);
|
|
59
|
+
}
|
|
56
60
|
}
|
|
57
61
|
// TODO: this doesn't handle the case where a method sends/receives a HashMap<T>
|
|
58
62
|
// or Vec<T> where T is an enum or model type.
|
|
@@ -199,16 +203,21 @@ export class Context {
|
|
|
199
203
|
* @returns the StatusMonitor impl or undefined
|
|
200
204
|
*/
|
|
201
205
|
getStatusMonitorImplForType(model, use) {
|
|
202
|
-
if (!this.
|
|
206
|
+
if (!this.lroStatusTypes.has(model)) {
|
|
203
207
|
return undefined;
|
|
204
208
|
}
|
|
205
209
|
const formatType = getPayloadFormatType(this.getModelBodyFormat(model));
|
|
206
210
|
use.add('azure_core::http', formatType);
|
|
207
211
|
use.addForType(model);
|
|
208
|
-
|
|
212
|
+
const resultType = this.lroResultTypes.get(model);
|
|
213
|
+
if (resultType !== undefined) {
|
|
214
|
+
use.addForType(resultType);
|
|
215
|
+
use.add('azure_core::http::poller', 'StatusMonitor', 'PollerStatus');
|
|
216
|
+
}
|
|
209
217
|
const indent = new helpers.indentation();
|
|
218
|
+
const outputType = resultType !== undefined ? helpers.getTypeDeclaration(helpers.unwrapType(resultType)) : '()';
|
|
210
219
|
let content = `impl StatusMonitor for ${model.name} {\n`;
|
|
211
|
-
content += `${indent.get()}type Output = ${
|
|
220
|
+
content += `${indent.get()}type Output = ${outputType};\n`;
|
|
212
221
|
content += `${indent.get()}type Format = ${formatType};\n`;
|
|
213
222
|
content += `${indent.get()}fn status(&self) -> PollerStatus {\n`;
|
|
214
223
|
const statusField = model.fields.find(f => f.name.toLowerCase() === 'status');
|