Skip to content

Commit e86fa63

Browse files
committed
chore: Generate documentation comments for public memebers and add the '<auto-generated/>' hint
1 parent 3b5a47c commit e86fa63

File tree

52 files changed

+820
-93
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

52 files changed

+820
-93
lines changed

Libraries/src/Amazon.Lambda.Annotations.SourceGenerator/Models/GeneratedMethodModelBuilder.cs

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,8 @@ private static IList<ParameterModel> BuildParameters(IMethodSymbol lambdaMethodS
148148
Type = new TypeModel
149149
{
150150
FullName = TypeFullNames.ILambdaContext
151-
}
151+
},
152+
Documentation = "The ILambdaContext that provides methods for logging and describing the Lambda environment."
152153
};
153154

154155
if (lambdaMethodSymbol.HasAttribute(context, TypeFullNames.RestApiAttribute))
@@ -158,7 +159,8 @@ private static IList<ParameterModel> BuildParameters(IMethodSymbol lambdaMethodS
158159
var requestParameter = new ParameterModel
159160
{
160161
Name = "__request__",
161-
Type = type
162+
Type = type,
163+
Documentation = "The API Gateway request object that will be processed by the Lambda function handler."
162164
};
163165
parameters.Add(requestParameter);
164166
parameters.Add(contextParameter);
@@ -188,7 +190,8 @@ private static IList<ParameterModel> BuildParameters(IMethodSymbol lambdaMethodS
188190
var requestParameter = new ParameterModel
189191
{
190192
Name = "__request__",
191-
Type = type
193+
Type = type,
194+
Documentation = "The API Gateway request object that will be processed by the Lambda function handler."
192195
};
193196
parameters.Add(requestParameter);
194197
parameters.Add(contextParameter);
@@ -208,6 +211,11 @@ private static IList<ParameterModel> BuildParameters(IMethodSymbol lambdaMethodS
208211
else if(param.Type.FullName == TypeFullNames.ILambdaContext)
209212
{
210213
param.Name = "__context__";
214+
param.Documentation = "The ILambdaContext that provides methods for logging and describing the Lambda environment.";
215+
}
216+
else
217+
{
218+
param.Documentation = "The request object that will be processed by the Lambda function handler.";
211219
}
212220

213221
parameters.Add(param);

Libraries/src/Amazon.Lambda.Annotations.SourceGenerator/Models/ParameterModel.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,5 +23,10 @@ public class ParameterModel
2323
/// an empty list.
2424
/// </summary>
2525
public IList<AttributeModel> Attributes { get; set; } = new List<AttributeModel>();
26+
27+
/// <summary>
28+
/// Gets or sets the documentation of parameter.
29+
/// </summary>
30+
public string Documentation { get; set; }
2631
}
2732
}

Libraries/src/Amazon.Lambda.Annotations.SourceGenerator/Templates/ExecutableAssembly.cs

Lines changed: 41 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ namespace Amazon.Lambda.Annotations.SourceGenerator.Templates
2323
/// Class to produce the template output
2424
/// </summary>
2525

26-
#line 1 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
26+
#line 1 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
2727
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "17.0.0.0")]
2828
public partial class ExecutableAssembly : ExecutableAssemblyBase
2929
{
@@ -33,20 +33,30 @@ public partial class ExecutableAssembly : ExecutableAssemblyBase
3333
/// </summary>
3434
public virtual string TransformText()
3535
{
36-
this.Write("using System;\r\nusing System.Linq;\r\nusing System.Collections.Generic;\r\nusing Syste" +
37-
"m.Text;\r\nusing System.Threading.Tasks;\r\nusing System.IO;\r\nusing Amazon.Lambda.Co" +
38-
"re;\r\n\r\nnamespace ");
36+
this.Write("// <auto-generated/>\r\n\r\nusing System;\r\nusing System.Linq;\r\nusing System.Collectio" +
37+
"ns.Generic;\r\nusing System.Text;\r\nusing System.Threading.Tasks;\r\nusing System.IO;" +
38+
"\r\nusing Amazon.Lambda.Core;\r\n\r\nnamespace ");
3939

40-
#line 19 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
40+
#line 21 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
4141
this.Write(this.ToStringHelper.ToStringWithCulture(this._containingNamespace));
4242

4343
#line default
4444
#line hidden
45-
this.Write(";\r\n\r\npublic class GeneratedProgram\r\n{\r\n public static async Task Main(string[]" +
46-
" args)\r\n {\r\n\r\n switch (Environment.GetEnvironmentVariable(\"ANNOTATIONS" +
47-
"_HANDLER\"))\r\n {\r\n");
45+
this.Write(@";
46+
47+
public class GeneratedProgram
48+
{
49+
/// <summary>
50+
/// This is responsible for inspecting the 'ANNOTATIONS_HANDLER' environment variable and invoking the appropriate Lambda function handler.
51+
/// </summary>
52+
public static async Task Main(string[] args)
53+
{
54+
55+
switch (Environment.GetEnvironmentVariable(""ANNOTATIONS_HANDLER""))
56+
{
57+
");
4858

49-
#line 28 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
59+
#line 33 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
5060

5161
foreach (var model in this._lambdaFunctions)
5262
{
@@ -56,14 +66,14 @@ public virtual string TransformText()
5666
#line hidden
5767
this.Write(" case \"");
5868

59-
#line 32 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
69+
#line 37 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
6070
this.Write(this.ToStringHelper.ToStringWithCulture(model.LambdaMethod.Name));
6171

6272
#line default
6373
#line hidden
6474
this.Write("\":\r\n");
6575

66-
#line 33 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
76+
#line 38 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
6777

6878
if (model.GeneratedMethod.ReturnType.FullName == "void")
6979
{
@@ -73,64 +83,64 @@ public virtual string TransformText()
7383
#line hidden
7484
this.Write(" Action<");
7585

76-
#line 37 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
86+
#line 42 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
7787
this.Write(this.ToStringHelper.ToStringWithCulture(model.GeneratedMethod.Parameters.Any() ? string.Join(", ", model.GeneratedMethod.Parameters.Select(p => $"{p.Type.FullName}")) : "Stream"));
7888

7989
#line default
8090
#line hidden
8191
this.Write("> ");
8292

83-
#line 37 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
93+
#line 42 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
8494
this.Write(this.ToStringHelper.ToStringWithCulture(model.LambdaMethod.ExecutableAssemblyHandlerName));
8595

8696
#line default
8797
#line hidden
8898
this.Write(" = new ");
8999

90-
#line 37 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
100+
#line 42 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
91101
this.Write(this.ToStringHelper.ToStringWithCulture(model.LambdaMethod.ContainingNamespace));
92102

93103
#line default
94104
#line hidden
95105
this.Write(".");
96106

97-
#line 37 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
107+
#line 42 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
98108
this.Write(this.ToStringHelper.ToStringWithCulture(model.LambdaMethod.ContainingType.Name));
99109

100110
#line default
101111
#line hidden
102112
this.Write("_");
103113

104-
#line 37 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
114+
#line 42 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
105115
this.Write(this.ToStringHelper.ToStringWithCulture(model.LambdaMethod.Name));
106116

107117
#line default
108118
#line hidden
109119
this.Write("_Generated().");
110120

111-
#line 37 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
121+
#line 42 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
112122
this.Write(this.ToStringHelper.ToStringWithCulture(model.LambdaMethod.Name));
113123

114124
#line default
115125
#line hidden
116126
this.Write(";\r\n await Amazon.Lambda.RuntimeSupport.LambdaBootstrapBuilder.Crea" +
117127
"te(");
118128

119-
#line 38 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
129+
#line 43 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
120130
this.Write(this.ToStringHelper.ToStringWithCulture(model.LambdaMethod.ExecutableAssemblyHandlerName));
121131

122132
#line default
123133
#line hidden
124134
this.Write(", new ");
125135

126-
#line 38 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
136+
#line 43 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
127137
this.Write(this.ToStringHelper.ToStringWithCulture(this._lambdaFunctions[0].SerializerInfo.SerializerName));
128138

129139
#line default
130140
#line hidden
131141
this.Write("()).Build().RunAsync();\r\n break;\r\n");
132142

133-
#line 40 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
143+
#line 45 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
134144

135145
}
136146
else
@@ -141,71 +151,71 @@ public virtual string TransformText()
141151
#line hidden
142152
this.Write(" Func<");
143153

144-
#line 45 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
154+
#line 50 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
145155
this.Write(this.ToStringHelper.ToStringWithCulture(model.GeneratedMethod.Parameters.Any() ? string.Join(", ", model.GeneratedMethod.Parameters.Select(p => $"{p.Type.FullName}")) : "Stream"));
146156

147157
#line default
148158
#line hidden
149159
this.Write(", ");
150160

151-
#line 45 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
161+
#line 50 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
152162
this.Write(this.ToStringHelper.ToStringWithCulture(model.GeneratedMethod.ReturnType.FullName));
153163

154164
#line default
155165
#line hidden
156166
this.Write("> ");
157167

158-
#line 45 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
168+
#line 50 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
159169
this.Write(this.ToStringHelper.ToStringWithCulture(model.LambdaMethod.ExecutableAssemblyHandlerName));
160170

161171
#line default
162172
#line hidden
163173
this.Write(" = new ");
164174

165-
#line 45 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
175+
#line 50 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
166176
this.Write(this.ToStringHelper.ToStringWithCulture(model.LambdaMethod.ContainingNamespace));
167177

168178
#line default
169179
#line hidden
170180
this.Write(".");
171181

172-
#line 45 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
182+
#line 50 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
173183
this.Write(this.ToStringHelper.ToStringWithCulture(model.LambdaMethod.ContainingType.Name));
174184

175185
#line default
176186
#line hidden
177187
this.Write("_");
178188

179-
#line 45 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
189+
#line 50 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
180190
this.Write(this.ToStringHelper.ToStringWithCulture(model.LambdaMethod.Name));
181191

182192
#line default
183193
#line hidden
184194
this.Write("_Generated().");
185195

186-
#line 45 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
196+
#line 50 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
187197
this.Write(this.ToStringHelper.ToStringWithCulture(model.LambdaMethod.Name));
188198

189199
#line default
190200
#line hidden
191201
this.Write(";\r\n await Amazon.Lambda.RuntimeSupport.LambdaBootstrapBuilder.Crea" +
192202
"te(");
193203

194-
#line 46 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
204+
#line 51 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
195205
this.Write(this.ToStringHelper.ToStringWithCulture(model.LambdaMethod.ExecutableAssemblyHandlerName));
196206

197207
#line default
198208
#line hidden
199209
this.Write(", new ");
200210

201-
#line 46 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
211+
#line 51 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
202212
this.Write(this.ToStringHelper.ToStringWithCulture(model.SerializerInfo.SerializerName));
203213

204214
#line default
205215
#line hidden
206216
this.Write("()).Build().RunAsync();\r\n break;\r\n");
207217

208-
#line 48 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
218+
#line 53 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
209219

210220
}
211221
}
@@ -215,7 +225,7 @@ public virtual string TransformText()
215225
#line hidden
216226
this.Write("\r\n }\r\n");
217227

218-
#line 54 "C:\codebase\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
228+
#line 59 "C:\codebase\V3\HLL\aws-lambda-dotnet\Libraries\src\Amazon.Lambda.Annotations.SourceGenerator\Templates\ExecutableAssembly.tt"
219229

220230

221231

Libraries/src/Amazon.Lambda.Annotations.SourceGenerator/Templates/ExecutableAssembly.tt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@
88
<#@ import namespace="Amazon.Lambda.Annotations.SourceGenerator.Validation" #>
99
<#@ import namespace="Amazon.Lambda.Annotations.SourceGenerator.Models" #>
1010
<#@ import namespace="Amazon.Lambda.Annotations.SourceGenerator.Models.Attributes" #>
11+
// <auto-generated/>
12+
1113
using System;
1214
using System.Linq;
1315
using System.Collections.Generic;
@@ -20,6 +22,9 @@ namespace <#= this._containingNamespace #>;
2022

2123
public class GeneratedProgram
2224
{
25+
/// <summary>
26+
/// This is responsible for inspecting the 'ANNOTATIONS_HANDLER' environment variable and invoking the appropriate Lambda function handler.
27+
/// </summary>
2328
public static async Task Main(string[] args)
2429
{
2530

0 commit comments

Comments
 (0)