Files
codegen/Generator/MySourceGenerator.cs
2025-10-03 20:08:33 +08:00

20 lines
593 B
C#

using System.Text;
using Microsoft.CodeAnalysis;
using Microsoft.CodeAnalysis.Text;
namespace MySourceGenerator {
[Generator]
public class MySourceGenerator : ISourceGenerator {
public void Execute(GeneratorExecutionContext context) {
var template = context.AdditionalFiles.Where(static file => file.Path.EndsWith("HelloWorld.template.cs")).First().GetText()?.ToString();
if (template == null) {
return;
}
context.AddSource("HelleWorld.generated", SourceText.From(template, Encoding.UTF8));
}
public void Initialize(GeneratorInitializationContext context) {
}
}
}