Skip to content

Commit a3cd633

Browse files
authored
Fix doc issue in resource extension. (#54193)
* Fix doc issue in resource extension. * regen
1 parent d42c422 commit a3cd633

File tree

9 files changed

+629
-559
lines changed

9 files changed

+629
-559
lines changed

eng/packages/http-client-csharp-mgmt/generator/Azure.Generator.Management/src/Providers/ExtensionProvider.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -173,7 +173,7 @@ private FormattableString BuildMockingDescription(CSharpType mockableType, Metho
173173
// In C# XML docs, method references look like: MethodName(TypeName1, TypeName2)
174174

175175
// Build parameter type list as a simple string since XML doc cref attributes use simple type names
176-
var parameterTypeNames = string.Join(", ", targetSignature.Parameters.Select(p => p.Type.Name));
176+
var parameterTypeNames = string.Join(", ", targetSignature.Parameters.Select(p => p.Type.GetXmlDocTypeName()));
177177
var methodRef = $"{mockableType.Name}.{targetSignature.Name}({parameterTypeNames})";
178178

179179
// Return a FormattableString that will be converted to: To mock this method, please mock <see cref="..."/> instead.

eng/packages/http-client-csharp-mgmt/generator/Azure.Generator.Management/src/Utilities/CSharpTypeExtensions.cs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,5 +36,15 @@ public static bool IsModelType(this CSharpType type)
3636
{
3737
return ManagementClientGenerator.Instance.OutputLibrary.IsModelType(type);
3838
}
39+
40+
public static string GetXmlDocTypeName(this CSharpType type)
41+
{
42+
// For nullable value types, we need to append '?' to the type name for XML documentation
43+
if (type.IsValueType && type.IsNullable)
44+
{
45+
return $"{type.Name}?";
46+
}
47+
return type.Name;
48+
}
3949
}
4050
}

eng/packages/http-client-csharp-mgmt/generator/TestProjects/Local/Mgmt-TypeSpec/baz.tsp

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,5 +32,10 @@ interface Bazs {
3232

3333
list is ArmResourceListByParent<Baz>;
3434

35-
listBySubscription is ArmListBySubscription<Baz>;
35+
listBySubscription is ArmListBySubscription<
36+
Baz,
37+
Parameters = {
38+
@query("$top")
39+
$top?: int32;
40+
}>;
3641
}

eng/packages/http-client-csharp-mgmt/generator/TestProjects/Local/Mgmt-TypeSpec/src/Generated/CollectionResults/BazsGetBySubscriptionAsyncCollectionResultOfT.cs

Lines changed: 5 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

eng/packages/http-client-csharp-mgmt/generator/TestProjects/Local/Mgmt-TypeSpec/src/Generated/CollectionResults/BazsGetBySubscriptionCollectionResultOfT.cs

Lines changed: 5 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

eng/packages/http-client-csharp-mgmt/generator/TestProjects/Local/Mgmt-TypeSpec/src/Generated/Extensions/AzureGeneratorMgmtTypeSpecTestsExtensions.cs

Lines changed: 8 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

eng/packages/http-client-csharp-mgmt/generator/TestProjects/Local/Mgmt-TypeSpec/src/Generated/Extensions/MockableAzureGeneratorMgmtTypeSpecTestsSubscriptionResource.cs

Lines changed: 6 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

eng/packages/http-client-csharp-mgmt/generator/TestProjects/Local/Mgmt-TypeSpec/src/Generated/RestOperations/BazsRestOperations.cs

Lines changed: 6 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)