59 instantiations of AtsParameterInfo
Aspire.Hosting.CodeGeneration.Go (1)
Aspire.Hosting.CodeGeneration.Go.Tests (6)
Aspire.Hosting.CodeGeneration.Java.Tests (6)
Aspire.Hosting.CodeGeneration.Python (1)
Aspire.Hosting.CodeGeneration.Python.Tests (17)
AtsPythonCodeGeneratorTests.cs (17)
883new AtsParameterInfo
888new AtsParameterInfo
939new AtsParameterInfo
944new AtsParameterInfo
1015new AtsParameterInfo
1099new AtsParameterInfo
1105new AtsParameterInfo
1113new AtsParameterInfo
1203new AtsParameterInfo { Name = "builder", Type = projectType },
1204new AtsParameterInfo { Name = "target", Type = stringType },
1205new AtsParameterInfo { Name = "name", Type = stringType },
1206new AtsParameterInfo { Name = "env", Type = stringType },
1207new AtsParameterInfo { Name = "isReadOnly", Type = boolType, IsOptional = true }
1225new AtsParameterInfo { Name = "builder", Type = containerType },
1226new AtsParameterInfo { Name = "target", Type = stringType },
1227new AtsParameterInfo { Name = "name", Type = stringType, IsOptional = true },
1228new AtsParameterInfo { Name = "isReadOnly", Type = boolType, IsOptional = true }
Aspire.Hosting.CodeGeneration.TypeScript (1)
Aspire.Hosting.CodeGeneration.TypeScript.Tests (9)
Aspire.Hosting.Native.CodeGeneration (6)
Aspire.Hosting.RemoteHost (8)
Aspire.Hosting.RemoteHost.Tests (4)
321 references to AtsParameterInfo
aspire-managed (2)
Aspire.Hosting.CodeGeneration.Go (54)
AtsGoCodeGenerator.cs (43)
206foreach (var parameter in capability.Parameters)
688var optionsDescription = TryGetDirectOptionsParameter(optionalParams, out var directOptionsParam)
1469private static (List<AtsParameterInfo> Required, List<AtsParameterInfo> Optional) SplitParameters(
1470List<AtsParameterInfo> parameters)
1472var required = new List<AtsParameterInfo>();
1473var optional = new List<AtsParameterInfo>();
1474foreach (var p in parameters)
1498IReadOnlyList<AtsParameterInfo> optionalParams,
1499[NotNullWhen(true)] out AtsParameterInfo? directOptionsParam)
1507List<AtsParameterInfo> requiredParams,
1508List<AtsParameterInfo> optionalParams,
1512foreach (var p in requiredParams)
1531if (TryGetDirectOptionsParameter(optionalParams, out var directOptionsParam))
1543private string RenderParameterType(AtsParameterInfo p)
1560private string RenderCallbackType(AtsParameterInfo p)
1695List<AtsParameterInfo> requiredParams,
1696List<AtsParameterInfo> optionalParams,
1768List<AtsParameterInfo> requiredParams,
1769List<AtsParameterInfo> optionalParams,
1793List<AtsParameterInfo> requiredParams,
1794List<AtsParameterInfo> optionalParams,
1816foreach (var p in capability.Parameters)
1831List<AtsParameterInfo> requiredParams,
1832List<AtsParameterInfo> optionalParams,
1844foreach (var p in requiredParams)
1888if (TryGetDirectOptionsParameter(optionalParams, out var directOptionsParam))
1911foreach (var p in optionalParams.Where(o => o.IsCallback))
1918foreach (var p in optionalParams.Where(IsCancellationToken))
1937private void EmitCallbackRegistration(string indent, AtsParameterInfo p, string callbackExpr)
1956var p = DtoPropertyToParameterInfo(property);
1965private static AtsParameterInfo DtoPropertyToParameterInfo(AtsDtoPropertyInfo property)
1980private void EmitGoCallbackShimBody(string indent, AtsParameterInfo p, string? clientExpression)
2132foreach (var p in optionalParams)
2157foreach (var p in optionalParams)
2187private string RenderOptionsFieldType(AtsParameterInfo p)
2272private static List<AtsParameterInfo> GetUnionParameters(AtsCapabilityInfo capability)
2277var result = new List<AtsParameterInfo>();
2278foreach (var p in capability.Parameters)
2305foreach (var p in GetUnionParameters(capability))
2382List<AtsParameterInfo> requiredParams,
2383List<AtsParameterInfo> optionalParams,
2726private static bool IsCancellationToken(AtsParameterInfo parameter) =>
Aspire.Hosting.CodeGeneration.Go.Tests (10)
AtsGoDerivedBuilderTests.cs (5)
647private static AtsParameterInfo Required(string name, AtsTypeRef type) => new() { Name = name, Type = type };
649private static AtsParameterInfo Optional(string name, AtsTypeRef type) => new() { Name = name, Type = type, IsOptional = true, IsNullable = true };
651private static AtsParameterInfo Callback(string name, params (string Name, AtsTypeRef Type)[] parameters) => new()
663private static AtsCapabilityInfo Consumer(string methodName, params AtsParameterInfo[] parameters) =>
670IReadOnlyList<AtsParameterInfo> parameters,
Aspire.Hosting.CodeGeneration.Java (47)
AtsJavaCodeGenerator.cs (47)
42private readonly Dictionary<string, List<AtsParameterInfo>> _optionsClassesToGenerate = new(StringComparer.Ordinal);
961private void RegisterOptionsClass(string capabilityId, string methodName, List<AtsParameterInfo> optionalParameters)
994private static bool AreOptionsCompatible(List<AtsParameterInfo> existing, List<AtsParameterInfo> candidate)
1012private static bool AreParameterTypesEqual(AtsParameterInfo left, AtsParameterInfo right)
1063foreach (var parameter in optionalParameters)
1070foreach (var parameter in optionalParameters)
1087private static (List<AtsParameterInfo> Required, List<AtsParameterInfo> Optional) SeparateParameters(IEnumerable<AtsParameterInfo> parameters)
1089var required = new List<AtsParameterInfo>();
1090var optional = new List<AtsParameterInfo>();
1092foreach (var parameter in parameters)
1120private List<JavaMethodParameter> CreateMethodParameters(IEnumerable<AtsParameterInfo> parameters)
1124foreach (var parameter in parameters)
1137private (string? ResourceWrapperType, string? ResourceWrapperParameterType) GetResourceBuilderWrapperType(AtsParameterInfo parameter)
1238private static string GetOptionGetterName(AtsParameterInfo parameter)
1395private void GenerateUnionOverloads(JavaCapabilityReturnInfo returnInfo, string methodName, List<AtsParameterInfo> parameters)
1415private void GenerateSingleUnionOverloads(JavaCapabilityReturnInfo returnInfo, string methodName, List<AtsParameterInfo> parameters, AtsParameterInfo unionParameter)
1433foreach (var parameter in parameters)
1471private void GenerateMultiUnionOverloads(JavaCapabilityReturnInfo returnInfo, string methodName, List<AtsParameterInfo> parameters, List<AtsParameterInfo> unionParameters)
1489foreach (var parameter in parameters)
1542private void GenerateOptionalOverloads(JavaCapabilityReturnInfo returnInfo, string methodName, List<AtsParameterInfo> parameters)
1557foreach (var parameter in parameters)
1588private static string GetOmittedOptionalArgument(AtsParameterInfo parameter)
1596List<AtsParameterInfo> requiredParameters,
1605var unionParameter = unionParameters[0];
1623foreach (var parameter in requiredParameters)
1693List<AtsParameterInfo> parameters,
1694AtsParameterInfo unionParameter,
1699foreach (var parameter in parameters)
1731List<AtsParameterInfo> requiredParameters,
1732List<AtsParameterInfo> optionalParameters,
1751foreach (var parameter in optionalParameters)
1800private void GenerateCapabilityMethodImplementation(AtsCapabilityInfo capability, JavaCapabilityReturnInfo returnInfo, string methodName, string targetParamName, List<AtsParameterInfo> parameters, bool isPublic)
1803foreach (var parameter in parameters)
1822foreach (var parameter in parameters)
1930private void GenerateCallbackRegistration(AtsParameterInfo callbackParam)
1942private void GenerateCallbackBody(string callbackName, AtsParameterInfo callbackParam, IReadOnlyList<AtsCallbackParameterInfo>? callbackParameters)
2242private static bool IsOmittableParameter(AtsParameterInfo parameter) => parameter.IsOptional || parameter.IsNullable;
2430foreach (var parameter in capability.Parameters)
2546foreach (var parameter in capability.Parameters)
2636private string MapParameterToJava(AtsParameterInfo parameter)
2682private static bool IsCancellationToken(AtsParameterInfo parameter) =>
Aspire.Hosting.CodeGeneration.Java.Tests (4)
Aspire.Hosting.CodeGeneration.Python (47)
AtsPythonCodeGenerator.cs (47)
116List<AtsParameterInfo> RequiredParameters,
117List<AtsParameterInfo> OptionalParameters,
269private static string GetParamHandler(AtsParameterInfo param, string paramName)
282private static string GetConstructorParamHandler(AtsParameterInfo param, string paramName)
295private static string GetCallbackRegistrationOptions(AtsParameterInfo parameter)
363var extraParam = capWithExtra.Parameters.First(p => string.Equals(p.Name, extraParamName, StringComparison.Ordinal));
383var mergedParams = new List<AtsParameterInfo>();
384foreach (var p in fullCap.Parameters)
451private static List<AtsParameterInfo> FilterMethodParameters(IReadOnlyList<AtsParameterInfo> parameters, string? targetParameterName = null)
469private static string GetParamName(AtsParameterInfo param)
482private static string GetPythonDefaultValue(AtsParameterInfo param)
505private static bool RequiresOmissionSentinel(AtsParameterInfo param) =>
509private static string GetOptionalParameterPresenceCheck(AtsParameterInfo param, string parameterName) =>
514private static string MakeNullable(AtsParameterInfo param, string type)
545private string GetOptionalParamSuffix(AtsParameterInfo param)
659private string MapParameterToPython(AtsParameterInfo param)
813foreach (var param in cap.Parameters)
1326var valueParam = setter.Parameters.FirstOrDefault(p => p.Name == "value");
1387foreach (var param in requiredParams)
1397foreach (var param in optionalParams)
1416foreach (var param in userParams)
1713foreach (var param in requiredParams)
1723foreach (var param in optionalParams)
1756foreach (var param in userParams)
1778var discriminatingParam = userParams.First(p => string.Equals(p.Name, mergedDispatch.DiscriminatingParamName, StringComparison.Ordinal));
1840foreach (var param in userParams)
1876foreach (var param in userParams)
2226foreach (var param in cap.Parameters)
2461List<AtsParameterInfo> parameters,
2462List<AtsParameterInfo> requiredParameters,
2463List<AtsParameterInfo> optionalParameters)
2530private string AddParameterMapping(AtsCapabilityInfo capability, List<AtsParameterInfo> requiredParameters, List<AtsParameterInfo> optionalParameters)
2541foreach (var requiredParam in requiredParameters)
2545foreach (var optionalParam in optionalParameters)
2555private string ResolveParameterMappingName(AtsCapabilityInfo capability, List<AtsParameterInfo> requiredParameters, List<AtsParameterInfo> optionalParameters)
2625private ParameterMappingSignature CreateParameterMappingSignature(List<AtsParameterInfo> requiredParameters, List<AtsParameterInfo> optionalParameters)
2652List<AtsParameterInfo> requiredParams,
2653List<AtsParameterInfo> optionalParams,
2686var singleParam = requiredParams.Count > 0 ? requiredParams[0] : optionalParams[0];
2747foreach (var param in requiredParameters)
2752foreach (var param in optionalParameters)
2782var param = optionalParameters[0];
2792var singleParam = requiredParameters.Count > 0
Aspire.Hosting.CodeGeneration.Rust (5)
Aspire.Hosting.CodeGeneration.TypeScript (95)
AtsTypeScriptCodeGenerator.cs (52)
116IReadOnlyList<AtsParameterInfo>? publicParameters = null,
334private static string GetLocalParameterName(AtsParameterInfo parameter)
350private static string GetRpcArgumentExpression(AtsParameterInfo param, string localParameterName, bool useRegisteredCallback = true)
360private string GetRpcArgumentEntryForParam(AtsParameterInfo param, string localParameterName, bool useRegisteredCallback = true)
373private string GetRpcArgumentExpressionForParam(AtsParameterInfo param, string localParameterName, bool useRegisteredCallback = true)
765foreach (var param in optionalParams)
829var valueParam = setter.Parameters.FirstOrDefault(p => p.Name == "value");
1116var hasDirectOptionsParameter = TypeScriptApiProjector.TryGetDirectOptionsParameter(optionalParams, out var directOptionsParam);
1125foreach (var param in userParams)
1172foreach (var param in hasDirectOptionsParameter ? [] : optionalParams)
1179foreach (var callbackParam in callbackParamsForPromiseWrapper)
1208foreach (var param in hasDirectOptionsParameter ? [] : optionalParams)
1216foreach (var callbackParam in callbackParams2)
1256foreach (var callbackParam in callbackParams)
1296foreach (var param in hasDirectOptionsParameter ? [] : optionalParams)
1339private void GeneratePromiseResolution(IReadOnlyList<AtsParameterInfo> parameters, string indent = " ")
1341foreach (var param in parameters)
1390IReadOnlyList<AtsParameterInfo> allParams,
1391List<AtsParameterInfo> requiredParams,
1392List<AtsParameterInfo> optionalParams,
1406foreach (var param in requiredParams)
1414foreach (var param in optionalParams)
1427List<AtsParameterInfo> requiredParams,
1428List<AtsParameterInfo> optionalParams,
1439foreach (var param in requiredParams)
1447foreach (var param in optionalParams)
1456IEnumerable<AtsParameterInfo> parameters,
1461foreach (var param in parameters)
1558private static AtsParameterInfo CreateCallbackParameter(AtsDtoPropertyInfo callbackProperty, string callbackLocalName)
1755foreach (var param in capability.Parameters)
1767foreach (var param in optionalParams)
1791foreach (var param in capability.Parameters)
1803foreach (var param in optionalParams)
1834private void GenerateCallbackRegistration(AtsParameterInfo callbackParam, string indent = " ", string clientExpression = "this._client")
1882private void GenerateCallbackBody(AtsParameterInfo callbackParam, IReadOnlyList<AtsCallbackParameterInfo>? callbackParameters, string indent, string clientExpression)
2308var valueParam = setter.Parameters.FirstOrDefault(p => p.Name == "value");
2472var valueParam = setter.Parameters.FirstOrDefault(p => p.Name == "value");
2651var hasDirectOptionsParameter = TypeScriptApiProjector.TryGetDirectOptionsParameter(optionalParams, out var directOptionsParam);
2676foreach (var param in hasDirectOptionsParameter ? [] : optionalParams)
2703foreach (var param in hasDirectOptionsParameter ? [] : optionalParams)
2766var hasDirectOptionsParameter = TypeScriptApiProjector.TryGetDirectOptionsParameter(optionalParams, out var directOptionsParam);
2789foreach (var param in hasDirectOptionsParameter ? [] : optionalParams)
2816foreach (var param in hasDirectOptionsParameter ? [] : optionalParams)
2884var hasDirectOptionsParameter = TypeScriptApiProjector.TryGetDirectOptionsParameter(optionalParams, out var directOptionsParam);
2893foreach (var param in userParams)
2923foreach (var callbackParam in callbackParams)
2952foreach (var callback in callbackParams)
2968foreach (var param in hasDirectOptionsParameter ? [] : optionalParams)
3000foreach (var callbackParam in callbackParams)
3026foreach (var param in hasDirectOptionsParameter ? [] : optionalParams)
3046foreach (var param in hasDirectOptionsParameter ? [] : optionalParams)
3054foreach (var callbackParam in callbackParams)
TypeScriptApiProjector.cs (37)
111internal Dictionary<string, List<AtsParameterInfo>> OptionsInterfacesToGenerate => _optionsInterfacesToGenerate;
320var hasDirectOptionsParameter = TryGetDirectOptionsParameter(optionalParams, out var directOptionsParam);
325var trailingCancellationToken = GetTrailingCancellationTokenParameter(optionalParams);
362TypeScriptApiParameter ProjectPublicParameter(AtsParameterInfo parameter)
1289foreach (var parameter in capability.Parameters)
1458List<AtsParameterInfo> optionalParams)
1586private readonly Dictionary<string, List<AtsParameterInfo>> _optionsInterfacesToGenerate = new(StringComparer.Ordinal);
1943internal string MapParameterToTypeScript(AtsParameterInfo param)
2106internal static (List<AtsParameterInfo> Required, List<AtsParameterInfo> Optional) SeparateParameters(
2107IEnumerable<AtsParameterInfo> parameters)
2109var required = new List<AtsParameterInfo>();
2110var optional = new List<AtsParameterInfo>();
2112foreach (var param in parameters)
2127internal static bool TryGetDirectOptionsParameter(List<AtsParameterInfo> optionalParams, out AtsParameterInfo? directOptionsParam)
2143internal static AtsParameterInfo? GetTrailingCancellationTokenParameter(List<AtsParameterInfo> optionalParams)
2165List<AtsParameterInfo> optionalParams,
2212List<AtsParameterInfo> optionalParams,
2242List<AtsParameterInfo> optionalParams,
2247foreach (var param in optionalParams)
2278internal static bool AreOptionsCompatible(List<AtsParameterInfo> existing, List<AtsParameterInfo> candidate)
2280foreach (var param in candidate)
2282var match = existing.FirstOrDefault(p => p.Name == param.Name);
2301private static bool AreOptionsExactMatch(List<AtsParameterInfo> existing, List<AtsParameterInfo> candidate)
2324internal static bool AreParameterTypesEqual(AtsParameterInfo a, AtsParameterInfo b)
2377List<AtsParameterInfo> requiredParams,
2381AtsParameterInfo? trailingCancellationToken = null)
2384foreach (var param in requiredParams)
2402IReadOnlyList<AtsParameterInfo> userParams,
2412var trailingCancellationToken = GetTrailingCancellationTokenParameter(optionalParams);
2433IReadOnlyList<AtsParameterInfo> userParams,
2966foreach (var param in cap.Parameters)
Aspire.Hosting.CodeGeneration.TypeScript.Tests (16)
Aspire.Hosting.Native.CodeGeneration (16)
Aspire.Hosting.RemoteHost (16)
Aspire.Hosting.RemoteHost.Tests (8)
Aspire.TypeSystem (1)