extensions rework pt1
.NET Test / .NET tests (push) Successful in 2m0s

This commit is contained in:
2026-07-13 22:20:47 +04:00
parent 46487a4794
commit 0e7986996f
30 changed files with 1476 additions and 160 deletions
@@ -1,4 +1,7 @@
using System.Collections.Generic;
using Just.Railway.SourceGen.Executors;
using Just.Railway.SourceGen.Executors.ResultExtensions.MainExtensions;
using Just.Railway.SourceGen.Executors.ResultExtensions.ValueTaskExtensions;
using Microsoft.CodeAnalysis;
namespace Just.Railway.SourceGen;
@@ -6,9 +9,10 @@ namespace Just.Railway.SourceGen;
[Generator]
public class ExtensionsMethodGenerator : IIncrementalGenerator
{
private readonly IEnumerable<IGeneratorExecutor> _executors = new IGeneratorExecutor[]
{
private readonly IEnumerable<IGeneratorExecutor> _executors =
[
new ResultCombineExecutor(),
new ResultMatchExecutor(),
new ResultMapExecutor(),
new ResultBindExecutor(),
@@ -16,15 +20,24 @@ public class ExtensionsMethodGenerator : IIncrementalGenerator
new ResultExtendExecutor(),
new ResultTryRecoverExecutor(),
new ResultAppendExecutor(),
new ResultValueTaskMatchExecutor(),
new ResultValueTaskMapExecutor(),
new ResultValueTaskBindExecutor(),
new ResultValueTaskTapExecutor(),
new ResultValueTaskExtendExecutor(),
new ResultValueTaskTryRecoverExecutor(),
new ResultValueTaskAppendExecutor(),
new TryExtensionsExecutor(),
new EnsureExtensionsExecutor(),
};
];
public void Initialize(IncrementalGeneratorInitializationContext context)
{
foreach (var executor in _executors)
{
context.RegisterSourceOutput(context.CompilationProvider, executor.Execute);
context.RegisterPostInitializationOutput(executor.Execute);
}
}
}