@azure-tools/typespec-go 0.17.4 → 0.17.5-dev.10
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/core/example.js +20 -20
- package/dist/src/codegen/core/example.js.map +1 -1
- package/dist/src/codegen/core/helpers.d.ts +3 -9
- package/dist/src/codegen/core/helpers.d.ts.map +1 -1
- package/dist/src/codegen/core/helpers.js +33 -74
- package/dist/src/codegen/core/helpers.js.map +1 -1
- package/dist/src/codegen/core/imports.d.ts.map +1 -1
- package/dist/src/codegen/core/imports.js +4 -3
- package/dist/src/codegen/core/imports.js.map +1 -1
- package/dist/src/codegen/core/models.d.ts.map +1 -1
- package/dist/src/codegen/core/models.js +193 -143
- package/dist/src/codegen/core/models.js.map +1 -1
- package/dist/src/codegen/core/operations.js +11 -17
- package/dist/src/codegen/core/operations.js.map +1 -1
- package/dist/src/codegen/core/options.js +1 -5
- package/dist/src/codegen/core/options.js.map +1 -1
- package/dist/src/codegen/core/polymorphics.d.ts.map +1 -1
- package/dist/src/codegen/core/polymorphics.js +3 -5
- package/dist/src/codegen/core/polymorphics.js.map +1 -1
- package/dist/src/codegen/core/request-handler.d.ts.map +1 -1
- package/dist/src/codegen/core/request-handler.js +29 -22
- package/dist/src/codegen/core/request-handler.js.map +1 -1
- package/dist/src/codegen/core/response-handler.js +17 -15
- package/dist/src/codegen/core/response-handler.js.map +1 -1
- package/dist/src/codegen/core/responses.js +8 -22
- package/dist/src/codegen/core/responses.js.map +1 -1
- package/dist/src/codegen/core/unions.js +21 -16
- package/dist/src/codegen/core/unions.js.map +1 -1
- package/dist/src/codegen/fake/servers.js +105 -98
- package/dist/src/codegen/fake/servers.js.map +1 -1
- package/dist/src/codemodel/client.d.ts +8 -3
- package/dist/src/codemodel/client.d.ts.map +1 -1
- package/dist/src/codemodel/client.js +3 -3
- package/dist/src/codemodel/client.js.map +1 -1
- package/dist/src/codemodel/method.d.ts +1 -3
- package/dist/src/codemodel/method.d.ts.map +1 -1
- package/dist/src/codemodel/method.js +1 -2
- package/dist/src/codemodel/method.js.map +1 -1
- package/dist/src/codemodel/param.d.ts +41 -29
- package/dist/src/codemodel/param.d.ts.map +1 -1
- package/dist/src/codemodel/param.js +33 -33
- package/dist/src/codemodel/param.js.map +1 -1
- package/dist/src/codemodel/result.d.ts +21 -15
- package/dist/src/codemodel/result.d.ts.map +1 -1
- package/dist/src/codemodel/result.js +8 -24
- package/dist/src/codemodel/result.js.map +1 -1
- package/dist/src/codemodel/type.d.ts +83 -54
- package/dist/src/codemodel/type.d.ts.map +1 -1
- package/dist/src/codemodel/type.js +68 -30
- package/dist/src/codemodel/type.js.map +1 -1
- package/dist/src/tcgcadapter/clients.d.ts +2 -1
- package/dist/src/tcgcadapter/clients.d.ts.map +1 -1
- package/dist/src/tcgcadapter/clients.js +99 -107
- package/dist/src/tcgcadapter/clients.js.map +1 -1
- package/dist/src/tcgcadapter/helpers.d.ts +8 -27
- package/dist/src/tcgcadapter/helpers.d.ts.map +1 -1
- package/dist/src/tcgcadapter/helpers.js +32 -87
- package/dist/src/tcgcadapter/helpers.js.map +1 -1
- package/dist/src/tcgcadapter/types.d.ts +5 -3
- package/dist/src/tcgcadapter/types.d.ts.map +1 -1
- package/dist/src/tcgcadapter/types.js +113 -45
- package/dist/src/tcgcadapter/types.js.map +1 -1
- package/package.json +28 -28
|
@@ -64,7 +64,7 @@ export function generateExamples(pkg, target, options) {
|
|
|
64
64
|
// function signature
|
|
65
65
|
exampleText += `// Generated from example definition: ${example.filePath}\n`;
|
|
66
66
|
const exampleFuncNamePrefix = method.examples.length > 1 ? `_${helpers.camelCase(example.name)}` : "";
|
|
67
|
-
exampleText += `func Example${client.name}_${
|
|
67
|
+
exampleText += `func Example${client.name}_${method.name}${exampleFuncNamePrefix}() {\n`;
|
|
68
68
|
// create credential
|
|
69
69
|
exampleText += `${indent.get()}cred, err := azidentity.NewDefaultAzureCredential(nil)\n`;
|
|
70
70
|
exampleText += `${indent.get()}if err != nil {\n`;
|
|
@@ -102,7 +102,7 @@ export function generateExamples(pkg, target, options) {
|
|
|
102
102
|
});
|
|
103
103
|
}
|
|
104
104
|
}
|
|
105
|
-
exampleText += `${indent.get()}clientFactory, err := ${go.getPackageName(pkg.src)}.NewClientFactory(${clientFactoryParamsExample.map((p) => getExampleValue(pkg, p.value, "\t", imports, p.parameter.
|
|
105
|
+
exampleText += `${indent.get()}clientFactory, err := ${go.getPackageName(pkg.src)}.NewClientFactory(${clientFactoryParamsExample.map((p) => getExampleValue(pkg, p.value, "\t", imports, p.parameter.type.kind !== "ptr")).join(", ")}, nil)\n`;
|
|
106
106
|
exampleText += `${indent.get()}if err != nil {\n`;
|
|
107
107
|
exampleText += `${indent.push().get()}log.Fatalf("failed to create client: %v", err)\n`;
|
|
108
108
|
exampleText += `${indent.pop().get()}}\n`;
|
|
@@ -125,12 +125,12 @@ export function generateExamples(pkg, target, options) {
|
|
|
125
125
|
}
|
|
126
126
|
}
|
|
127
127
|
if (clientPrivateParameters.length > 0) {
|
|
128
|
-
clientRef += `${clientPrivateParameters.map((p) => getExampleValue(pkg, p.value, "\t", imports, p.parameter.
|
|
128
|
+
clientRef += `${clientPrivateParameters.map((p) => getExampleValue(pkg, p.value, "\t", imports, p.parameter.type.kind !== "ptr").slice(1)).join(", ")}`;
|
|
129
129
|
}
|
|
130
130
|
clientRef += `)`;
|
|
131
131
|
}
|
|
132
132
|
else {
|
|
133
|
-
exampleText += `${indent.get()}client, err := ${go.getPackageName(client.instance.constructors[0].pkg)}.${client.instance.constructors[0].name}(${clientParameters.map((p) => getExampleValue(pkg, p.value, "\t", imports, p.parameter.
|
|
133
|
+
exampleText += `${indent.get()}client, err := ${go.getPackageName(client.instance.constructors[0].pkg)}.${client.instance.constructors[0].name}(${clientParameters.map((p) => getExampleValue(pkg, p.value, "\t", imports, p.parameter.type.kind !== "ptr").slice(1)).join(", ")}, cred, nil)\n`;
|
|
134
134
|
exampleText += `${indent.get()}if err != nil {\n`;
|
|
135
135
|
exampleText += `${indent.push().get()}log.Fatalf("failed to create client: %v", err)\n`;
|
|
136
136
|
exampleText += `${indent.pop().get()}}\n`;
|
|
@@ -170,7 +170,7 @@ export function generateExamples(pkg, target, options) {
|
|
|
170
170
|
switch (method.kind) {
|
|
171
171
|
case "lroMethod":
|
|
172
172
|
case "lroPageableMethod":
|
|
173
|
-
exampleText += `${indent.get()}poller, err := ${clientRef}.${
|
|
173
|
+
exampleText += `${indent.get()}poller, err := ${clientRef}.${method.name}(ctx, ${renderedParams.join(", ")}${renderedParams.length > 0 ? ", " : ""}${methodOptionalParametersText.split("\n").join("\n" + indent.get())})\n`;
|
|
174
174
|
exampleText += `${indent.get()}if err != nil {\n`;
|
|
175
175
|
exampleText += `${indent.push().get()}log.Fatalf("failed to finish the request: %v", err)\n`;
|
|
176
176
|
exampleText += `${indent.pop().get()}}\n`;
|
|
@@ -180,13 +180,13 @@ export function generateExamples(pkg, target, options) {
|
|
|
180
180
|
exampleText += `${indent.pop().get()}}\n`;
|
|
181
181
|
break;
|
|
182
182
|
case "method":
|
|
183
|
-
exampleText += `${indent.get()}${checkResponse ? "res" : "_"}, err ${checkResponse ? ":=" : "="} ${clientRef}.${
|
|
183
|
+
exampleText += `${indent.get()}${checkResponse ? "res" : "_"}, err ${checkResponse ? ":=" : "="} ${clientRef}.${method.name}(ctx, ${renderedParams.join(", ")}${renderedParams.length > 0 ? ", " : ""}${methodOptionalParametersText.split("\n").join("\n" + indent.get())})\n`;
|
|
184
184
|
exampleText += `${indent.get()}if err != nil {\n`;
|
|
185
185
|
exampleText += `${indent.push().get()}log.Fatalf("failed to finish the request: %v", err)\n`;
|
|
186
186
|
exampleText += `${indent.pop().get()}}\n`;
|
|
187
187
|
break;
|
|
188
188
|
case "pageableMethod":
|
|
189
|
-
exampleText += `${indent.get()}pager := ${clientRef}.${
|
|
189
|
+
exampleText += `${indent.get()}pager := ${clientRef}.${method.name}(${renderedParams.join(", ")}${renderedParams.length > 0 ? ", " : ""}${methodOptionalParametersText.split("\n").join("\n" + indent.get())})\n`;
|
|
190
190
|
break;
|
|
191
191
|
default:
|
|
192
192
|
method;
|
|
@@ -198,7 +198,7 @@ export function generateExamples(pkg, target, options) {
|
|
|
198
198
|
if (method.kind === "lroPageableMethod") {
|
|
199
199
|
resultName = "res";
|
|
200
200
|
}
|
|
201
|
-
const itemType = method.returns.result.
|
|
201
|
+
const itemType = method.returns.result.type.fields.find((f) => f.type.kind === "slice");
|
|
202
202
|
exampleText += `${indent.get()}for ${resultName}.More() {\n`;
|
|
203
203
|
exampleText += `${indent.push().get()}page, err := ${resultName}.NextPage(ctx)\n`;
|
|
204
204
|
exampleText += `${indent.get()}if err != nil {\n`;
|
|
@@ -239,10 +239,10 @@ export function generateExamples(pkg, target, options) {
|
|
|
239
239
|
? fieldName
|
|
240
240
|
: (example.responseEnvelope?.result.type).name;
|
|
241
241
|
if (method.returns.result?.kind === "monomorphicResult") {
|
|
242
|
-
resultByValue = method.returns.result.
|
|
242
|
+
resultByValue = method.returns.result.type.kind !== "ptr";
|
|
243
243
|
}
|
|
244
244
|
else if (method.returns.result?.kind === "polymorphicResult") {
|
|
245
|
-
resultFieldName = method.returns.result.
|
|
245
|
+
resultFieldName = method.returns.result.type.name;
|
|
246
246
|
resultByValue = false;
|
|
247
247
|
}
|
|
248
248
|
exampleText += `${indent.get()}// \t${resultFieldName}: ${getExampleValue(pkg, example.responseEnvelope.result, "", undefined, resultByValue).split("\n").join(`\n${indent.get()}// \t`)},\n`;
|
|
@@ -317,10 +317,10 @@ function getExampleValue(pkg, example, indent, imports, byValue = false, inArray
|
|
|
317
317
|
case "any":
|
|
318
318
|
return jsonToGo(example.value, indent);
|
|
319
319
|
case "array": {
|
|
320
|
-
const isElementByValue = example.type.
|
|
320
|
+
const isElementByValue = example.type.itemType.kind !== "ptr";
|
|
321
321
|
// if polymorphic, need to add type name in array, so inArray will be set to false
|
|
322
322
|
// if other case, no need to add type name in array, so inArray will be set to true
|
|
323
|
-
const isElementPolymorphic = example.type.
|
|
323
|
+
const isElementPolymorphic = example.type.itemType.kind === "interface";
|
|
324
324
|
let exampleText = `${indent}${getRef(byValue)}${go.getTypeDeclaration(example.type, pkg)}{\n`;
|
|
325
325
|
for (const element of example.value) {
|
|
326
326
|
exampleText += `${getExampleValue(pkg, element, indent + "\t", imports, isElementByValue && !isElementPolymorphic, !isElementPolymorphic)},\n`;
|
|
@@ -330,8 +330,8 @@ function getExampleValue(pkg, example, indent, imports, byValue = false, inArray
|
|
|
330
330
|
}
|
|
331
331
|
case "dictionary": {
|
|
332
332
|
let exampleText = `${indent}${getRef(byValue)}${go.getTypeDeclaration(example.type, pkg)}{\n`;
|
|
333
|
-
const isValueByValue = example.type.
|
|
334
|
-
const isValuePolymorphic = example.type.
|
|
333
|
+
const isValueByValue = example.type.itemType.kind !== "ptr";
|
|
334
|
+
const isValuePolymorphic = example.type.itemType.kind === "interface";
|
|
335
335
|
for (const key in example.value) {
|
|
336
336
|
exampleText += `${indent}\t"${key}": ${getExampleValue(pkg, example.value[key], indent + "\t", imports, isValueByValue && !isValuePolymorphic).slice(indent.length + 1)},\n`;
|
|
337
337
|
}
|
|
@@ -345,15 +345,15 @@ function getExampleValue(pkg, example, indent, imports, byValue = false, inArray
|
|
|
345
345
|
}
|
|
346
346
|
for (const field in example.value) {
|
|
347
347
|
const goField = example.type.fields.find((f) => f.name === field);
|
|
348
|
-
const isFieldByValue = goField.
|
|
348
|
+
const isFieldByValue = goField.type.kind !== "ptr";
|
|
349
349
|
const isFieldPolymorphic = goField.type.kind === "interface";
|
|
350
350
|
exampleText += `${indent}\t${field}: ${getExampleValue(pkg, example.value[field], indent + "\t", imports, isFieldByValue && !isFieldPolymorphic).slice(indent.length + 1)},\n`;
|
|
351
351
|
}
|
|
352
352
|
if (example.additionalProperties) {
|
|
353
353
|
const additionalPropertiesField = example.type.fields.find((f) => go.isAdditionalProperties(f));
|
|
354
|
-
const isAdditionalPropertiesFieldByValue = additionalPropertiesField.type.
|
|
355
|
-
const isAdditionalPropertiesPolymorphic = additionalPropertiesField.type.
|
|
356
|
-
exampleText += `${indent}\t${additionalPropertiesField.name}: ${getRef(
|
|
354
|
+
const isAdditionalPropertiesFieldByValue = additionalPropertiesField.type.itemType.kind !== "ptr";
|
|
355
|
+
const isAdditionalPropertiesPolymorphic = additionalPropertiesField.type.itemType.kind === "interface";
|
|
356
|
+
exampleText += `${indent}\t${additionalPropertiesField.name}: ${getRef(isAdditionalPropertiesFieldByValue)}${go.getTypeDeclaration(additionalPropertiesField.type, pkg)}{\n`;
|
|
357
357
|
for (const key in example.additionalProperties) {
|
|
358
358
|
exampleText += `${indent}\t"${key}": ${getExampleValue(pkg, example.additionalProperties[key], indent + "\t", imports, isAdditionalPropertiesFieldByValue && !isAdditionalPropertiesPolymorphic).slice(indent.length + 1)},\n`;
|
|
359
359
|
}
|
|
@@ -714,7 +714,7 @@ function isParamByValue(p) {
|
|
|
714
714
|
case "interface":
|
|
715
715
|
return p.value.kind === "null";
|
|
716
716
|
default:
|
|
717
|
-
return p.parameter.
|
|
717
|
+
return p.parameter.type.kind !== "ptr";
|
|
718
718
|
}
|
|
719
719
|
}
|
|
720
720
|
/**
|
|
@@ -739,6 +739,6 @@ function getParamExampleValue(pkg, param, example, imports) {
|
|
|
739
739
|
return getExampleValue(pkg, paramExample.value, "\t", imports, isParamByValue(paramExample)).slice(1);
|
|
740
740
|
}
|
|
741
741
|
const fakeValue = generateFakeExample(param.type, param.name);
|
|
742
|
-
return getExampleValue(pkg, fakeValue, "\t", imports, param.
|
|
742
|
+
return getExampleValue(pkg, fakeValue, "\t", imports, param.type.kind !== "ptr").slice(1);
|
|
743
743
|
}
|
|
744
744
|
//# sourceMappingURL=example.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"example.js","sourceRoot":"","sources":["../../../../src/codegen/core/example.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"example.js","sourceRoot":"","sources":["../../../../src/codegen/core/example.ts"],"names":[],"mappings":"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"}
|
|
@@ -62,7 +62,6 @@ export declare function getCreateRequestParametersSig(method: go.MethodType | go
|
|
|
62
62
|
export declare function getCreateRequestParameters(method: go.MethodType, nextLinkParam?: string, optionsParam?: string): string;
|
|
63
63
|
export declare function getMethodParameters(method: go.MethodType | go.NextPageMethod, paramsFilter?: (p: Array<go.MethodParameter>) => Array<go.MethodParameter>): Array<go.MethodParameter | go.ParameterGroup>;
|
|
64
64
|
export declare function getParamName(param: go.MethodParameter): string;
|
|
65
|
-
export declare function fixUpMethodName(method: go.MethodType): string;
|
|
66
65
|
export declare function formatBytesEncoding(enc: go.BytesEncoding): string;
|
|
67
66
|
export declare function formatParamValue(param: go.MethodParameter, imports: ImportManager, indent: Indentation): string;
|
|
68
67
|
/**
|
|
@@ -98,7 +97,7 @@ export declare function emitScalarParsing(scalar: go.Scalar | go.Constant, src:
|
|
|
98
97
|
* @returns the time parsing code
|
|
99
98
|
*/
|
|
100
99
|
export declare function emitTimeParsing(srcVar: string, time: go.Time, dstVar: string, imports: ImportManager, indent: Indentation): string;
|
|
101
|
-
export declare function formatValue(paramName: string, type: go.WireType, imports: ImportManager
|
|
100
|
+
export declare function formatValue(paramName: string, type: go.WireType, imports: ImportManager): string;
|
|
102
101
|
export declare function formatLiteralValue(value: go.Literal, withCast: boolean): string;
|
|
103
102
|
export declare function getResultFieldName(method: go.MethodType): string;
|
|
104
103
|
export declare function formatStatusCodes(statusCodes: Array<number>): string;
|
|
@@ -108,13 +107,8 @@ export declare function formatDocCommentWithPrefix(prefix: string, docs: go.Docs
|
|
|
108
107
|
export declare function formatDocComment(docs: go.Docs): string;
|
|
109
108
|
export declare function getBitSizeForNumber(intSize: "float32" | "float64" | "int8" | "int16" | "int32" | "int64"): string;
|
|
110
109
|
export declare function recursiveUnwrapMapSlice(item: go.WireType): go.WireType;
|
|
111
|
-
/**
|
|
112
|
-
|
|
113
|
-
*
|
|
114
|
-
* @param byValue indicates if the type is passed by value
|
|
115
|
-
* @returns a * or the empty string
|
|
116
|
-
*/
|
|
117
|
-
export declare function star(byValue: boolean): string;
|
|
110
|
+
/** returns a * character when needing to dereference */
|
|
111
|
+
export declare function deref(type: go.WireType): "*" | "";
|
|
118
112
|
/**
|
|
119
113
|
* returns the zero-value expression for the specific parameter
|
|
120
114
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/codegen/core/helpers.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAG/C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG7C,eAAO,MAAM,aAAa,MAAM,CAAC;AAEjC,eAAO,MAAM,eAAe,kBAAkB,CAAC;AAC/C,eAAO,MAAM,aAAa,qBAAqB,CAAC;AAChD,eAAO,MAAM,aAAa,iBAAiB,CAAC;AAC5C,eAAO,MAAM,eAAe,kBAAkB,CAAC;AAI/C,eAAO,MAAM,cAAc,QAC+C,CAAC;AAQ3E;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAE5D;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,EAAE,CAAC,WAAW,GAAG,EAAE,CAAC,cAAc,GAAG,EAAE,CAAC,WAAW,EACxD,SAAS,UAAO,GACf,MAAM,CAmBR;AAGD,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,0EAA0E;AAC1E,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAY3D;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,EAAE,CAAC,aAAa,EACvB,OAAO,EAAE,MAAM,GAAG,QAAQ,EAC1B,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,WAAW,GAClB,MAAM,CAMR;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,EAAE,CAAC,WAAW,EACrB,KAAK,EAAE,EAAE,CAAC,iBAAiB,GAAG,EAAE,CAAC,eAAe,GAAG,EAAE,CAAC,cAAc,GACnE,MAAM,
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/codegen/core/helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -94,25 +94,16 @@ export function emitEmptyPathParamCheck(param, paramIn, imports, indent) {
|
|
|
94
94
|
*/
|
|
95
95
|
export function formatParameterTypeName(scope, param) {
|
|
96
96
|
let typeName;
|
|
97
|
-
let required;
|
|
98
97
|
switch (param.kind) {
|
|
99
98
|
case "armClientOptions":
|
|
100
|
-
typeName = go.getTypeDeclaration(param, scope);
|
|
101
|
-
required = false;
|
|
102
|
-
break;
|
|
103
99
|
case "clientOptions":
|
|
104
|
-
typeName = go.getTypeDeclaration(param, scope);
|
|
105
|
-
required = false;
|
|
106
|
-
break;
|
|
107
100
|
case "paramGroup":
|
|
108
101
|
typeName = go.getTypeDeclaration(param, scope);
|
|
109
|
-
required = param.required;
|
|
110
102
|
break;
|
|
111
103
|
default:
|
|
112
104
|
typeName = go.getTypeDeclaration(param.type, scope);
|
|
113
|
-
required = param.byValue;
|
|
114
105
|
}
|
|
115
|
-
return
|
|
106
|
+
return typeName;
|
|
116
107
|
}
|
|
117
108
|
// sorts parameters by their required state, ordering required before optional
|
|
118
109
|
function sortParametersByRequired(a, b) {
|
|
@@ -285,35 +276,11 @@ export function getParamName(param) {
|
|
|
285
276
|
if (param.location === "client") {
|
|
286
277
|
paramName = `client.${paramName}`;
|
|
287
278
|
}
|
|
288
|
-
|
|
289
|
-
if (!go.isRequiredParameter(param.style) &&
|
|
290
|
-
!(param.location === "client" && go.isClientSideDefault(param.style)) &&
|
|
291
|
-
!param.byValue) {
|
|
279
|
+
if (param.type.kind === "ptr") {
|
|
292
280
|
paramName = `*${paramName}`;
|
|
293
281
|
}
|
|
294
282
|
return paramName;
|
|
295
283
|
}
|
|
296
|
-
export function fixUpMethodName(method) {
|
|
297
|
-
switch (method.kind) {
|
|
298
|
-
case "lroMethod":
|
|
299
|
-
case "lroPageableMethod":
|
|
300
|
-
return `Begin${method.name}`;
|
|
301
|
-
case "pageableMethod": {
|
|
302
|
-
let N = "N";
|
|
303
|
-
let name = method.name;
|
|
304
|
-
if (method.name[0] !== method.name[0].toUpperCase()) {
|
|
305
|
-
// the method isn't exported; don't export the pager ctor
|
|
306
|
-
N = "n";
|
|
307
|
-
// ensure correct casing of the emitted function name e.g.,
|
|
308
|
-
// "listThings" -> "newListThingsPager"
|
|
309
|
-
name = name[0].toUpperCase() + name.substring(1);
|
|
310
|
-
}
|
|
311
|
-
return `${N}ew${name}Pager`;
|
|
312
|
-
}
|
|
313
|
-
case "method":
|
|
314
|
-
return method.name;
|
|
315
|
-
}
|
|
316
|
-
}
|
|
317
284
|
// converts the Go code model encoding type to the type name in the standard library
|
|
318
285
|
export function formatBytesEncoding(enc) {
|
|
319
286
|
if (enc === "URL") {
|
|
@@ -343,21 +310,20 @@ export function formatParamValue(param, imports, indent) {
|
|
|
343
310
|
content += `${indent.pop().get()}}(), "${separator}")`;
|
|
344
311
|
return content;
|
|
345
312
|
};
|
|
346
|
-
|
|
313
|
+
const unwrappedElement = go.unwrapPtr(param.type.itemType);
|
|
314
|
+
switch (unwrappedElement.kind) {
|
|
347
315
|
case "encodedBytes":
|
|
348
316
|
imports.add("encoding/base64");
|
|
349
317
|
imports.add("strings");
|
|
350
|
-
return emitConvertOver(param.name, `base64.${formatBytesEncoding(
|
|
318
|
+
return emitConvertOver(param.name, `base64.${formatBytesEncoding(unwrappedElement.encoding)}Encoding.EncodeToString(${param.name}[i])`);
|
|
351
319
|
case "string":
|
|
352
320
|
imports.add("strings");
|
|
353
321
|
return `strings.Join(${paramName}, "${separator}")`;
|
|
354
322
|
case "time": {
|
|
355
323
|
imports.add("strings");
|
|
356
324
|
imports.add("github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/datetime");
|
|
357
|
-
const elemVal = param.
|
|
358
|
-
|
|
359
|
-
: `${param.name}[i]`;
|
|
360
|
-
return emitConvertOver(param.name, `datetime.${param.type.elementType.format}(${elemVal}).String()`);
|
|
325
|
+
const elemVal = unwrappedElement.utc ? `${param.name}[i].UTC()` : `${param.name}[i]`;
|
|
326
|
+
return emitConvertOver(param.name, `datetime.${unwrappedElement.format}(${elemVal}).String()`);
|
|
361
327
|
}
|
|
362
328
|
default:
|
|
363
329
|
imports.add("fmt");
|
|
@@ -366,7 +332,9 @@ export function formatParamValue(param, imports, indent) {
|
|
|
366
332
|
}
|
|
367
333
|
}
|
|
368
334
|
}
|
|
369
|
-
|
|
335
|
+
// when we called getParamName it includes any dereference for a Ptr
|
|
336
|
+
// parameter, so we unwrap it here else we end up with a double deref
|
|
337
|
+
return formatValue(paramName, go.unwrapPtr(param.type), imports);
|
|
370
338
|
}
|
|
371
339
|
/**
|
|
372
340
|
* returns the receiver definition for a client
|
|
@@ -463,17 +431,15 @@ export function emitTimeParsing(srcVar, time, dstVar, imports, indent) {
|
|
|
463
431
|
}
|
|
464
432
|
return text;
|
|
465
433
|
}
|
|
466
|
-
export function formatValue(paramName, type, imports
|
|
434
|
+
export function formatValue(paramName, type, imports) {
|
|
467
435
|
// callers don't have enough context to know if paramName needs to be
|
|
468
436
|
// dereferenced so we track that here when specified. note that not all
|
|
469
437
|
// cases will require paramName to be dereferenced.
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
}
|
|
474
|
-
switch (type.kind) {
|
|
438
|
+
const star = deref(type);
|
|
439
|
+
const unwrappedType = go.unwrapPtr(type);
|
|
440
|
+
switch (unwrappedType.kind) {
|
|
475
441
|
case "constant":
|
|
476
|
-
if (
|
|
442
|
+
if (unwrappedType.type === "string") {
|
|
477
443
|
return `string(${star}${paramName})`;
|
|
478
444
|
}
|
|
479
445
|
imports.add("fmt");
|
|
@@ -481,19 +447,19 @@ export function formatValue(paramName, type, imports, deref) {
|
|
|
481
447
|
case "encodedBytes":
|
|
482
448
|
// a base-64 encoded value in string format
|
|
483
449
|
imports.add("encoding/base64");
|
|
484
|
-
return `base64.${formatBytesEncoding(
|
|
450
|
+
return `base64.${formatBytesEncoding(unwrappedType.encoding)}Encoding.EncodeToString(${paramName})`;
|
|
485
451
|
case "etag":
|
|
486
452
|
return `string(${star}${paramName})`;
|
|
487
453
|
case "literal":
|
|
488
454
|
// cannot use formatLiteralValue() since all values are treated as strings
|
|
489
|
-
switch (
|
|
455
|
+
switch (unwrappedType.type.kind) {
|
|
490
456
|
case "constantDef":
|
|
491
|
-
return
|
|
457
|
+
return unwrappedType.type.name;
|
|
492
458
|
default:
|
|
493
|
-
return `"${
|
|
459
|
+
return `"${unwrappedType.literal}"`;
|
|
494
460
|
}
|
|
495
461
|
case "scalar":
|
|
496
|
-
switch (
|
|
462
|
+
switch (unwrappedType.type) {
|
|
497
463
|
case "bool":
|
|
498
464
|
imports.add("strconv");
|
|
499
465
|
return `strconv.FormatBool(${star}${paramName})`;
|
|
@@ -510,12 +476,12 @@ export function formatValue(paramName, type, imports, deref) {
|
|
|
510
476
|
imports.add("strconv");
|
|
511
477
|
return `strconv.FormatInt(${star}${paramName}, 10)`;
|
|
512
478
|
default:
|
|
513
|
-
throw new CodegenError("InternalError", `unhandled scalar type ${
|
|
479
|
+
throw new CodegenError("InternalError", `unhandled scalar type ${unwrappedType.type}`);
|
|
514
480
|
}
|
|
515
481
|
case "time": {
|
|
516
482
|
imports.add("github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/datetime");
|
|
517
|
-
const timeVal =
|
|
518
|
-
return `datetime.${
|
|
483
|
+
const timeVal = unwrappedType.utc ? `(${star}${paramName}).UTC()` : `${star}${paramName}`;
|
|
484
|
+
return `datetime.${unwrappedType.format}(${timeVal}).String()`;
|
|
519
485
|
}
|
|
520
486
|
default:
|
|
521
487
|
return `${star}${paramName}`;
|
|
@@ -579,9 +545,8 @@ export function getResultFieldName(method) {
|
|
|
579
545
|
case "monomorphicResult":
|
|
580
546
|
return result.fieldName;
|
|
581
547
|
case "modelResult":
|
|
582
|
-
return result.modelType.name;
|
|
583
548
|
case "polymorphicResult":
|
|
584
|
-
return result.
|
|
549
|
+
return result.type.name;
|
|
585
550
|
}
|
|
586
551
|
}
|
|
587
552
|
export function formatStatusCodes(statusCodes) {
|
|
@@ -887,21 +852,17 @@ export function getBitSizeForNumber(intSize) {
|
|
|
887
852
|
export function recursiveUnwrapMapSlice(item) {
|
|
888
853
|
switch (item.kind) {
|
|
889
854
|
case "map":
|
|
890
|
-
return recursiveUnwrapMapSlice(item.valueType);
|
|
891
855
|
case "slice":
|
|
892
|
-
return recursiveUnwrapMapSlice(item.
|
|
856
|
+
return recursiveUnwrapMapSlice(item.itemType);
|
|
857
|
+
case "ptr":
|
|
858
|
+
return recursiveUnwrapMapSlice(item.ptrType);
|
|
893
859
|
default:
|
|
894
860
|
return item;
|
|
895
861
|
}
|
|
896
862
|
}
|
|
897
|
-
/**
|
|
898
|
-
|
|
899
|
-
*
|
|
900
|
-
* @param byValue indicates if the type is passed by value
|
|
901
|
-
* @returns a * or the empty string
|
|
902
|
-
*/
|
|
903
|
-
export function star(byValue) {
|
|
904
|
-
return byValue ? "" : "*";
|
|
863
|
+
/** returns a * character when needing to dereference */
|
|
864
|
+
export function deref(type) {
|
|
865
|
+
return type.kind === "ptr" ? "*" : "";
|
|
905
866
|
}
|
|
906
867
|
/**
|
|
907
868
|
* returns the zero-value expression for the specific parameter
|
|
@@ -984,16 +945,14 @@ export function getSerDeFormat(model, pkg) {
|
|
|
984
945
|
}
|
|
985
946
|
break;
|
|
986
947
|
case "modelResult":
|
|
987
|
-
|
|
948
|
+
case "polymorphicResult":
|
|
949
|
+
recursiveWalkModelFields(resultType.type, resultType.format);
|
|
988
950
|
break;
|
|
989
951
|
case "monomorphicResult":
|
|
990
952
|
if (resultType.format === "JSON" || resultType.format === "XML") {
|
|
991
|
-
recursiveWalkModelFields(resultType.
|
|
953
|
+
recursiveWalkModelFields(resultType.type, resultType.format);
|
|
992
954
|
}
|
|
993
955
|
break;
|
|
994
|
-
case "polymorphicResult":
|
|
995
|
-
recursiveWalkModelFields(resultType.interface, resultType.format);
|
|
996
|
-
break;
|
|
997
956
|
}
|
|
998
957
|
}
|
|
999
958
|
}
|