Skip to content

Commit 15b61ca

Browse files
committed
Refactor
1 parent 89b89d2 commit 15b61ca

14 files changed

Lines changed: 95 additions & 24 deletions

.idea/.idea.MattSourceGenHelpers/.idea/inspectionProfiles/Project_Default.xml

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

.run/Examples dotnet 10.run.xml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
<component name="ProjectRunConfigurationManager">
2+
<configuration default="false" name="Examples dotnet 10" type="DotNetFolderPublish" factoryName="Publish to folder">
3+
<riderPublish configuration="Release" platform="Any CPU" target_folder="$PROJECT_DIR$/MattSourceGenHelpers.Examples/bin/Release/net10.0/publish" target_framework="net10.0" uuid_high="2267988728648713066" uuid_low="-8701392894052327047">
4+
<runtimes>
5+
<item value="win-x64" />
6+
<item value="win-x86" />
7+
<item value="win-arm" />
8+
<item value="win-arm64" />
9+
<item value="osx-x64" />
10+
<item value="osx-arm64" />
11+
<item value="linux-x64" />
12+
<item value="linux-musl-x64" />
13+
<item value="linux-arm" />
14+
<item value="linux-arm64" />
15+
</runtimes>
16+
</riderPublish>
17+
<method v="2" />
18+
</configuration>
19+
</component>

.run/Examples dotnet 8.run.xml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
<component name="ProjectRunConfigurationManager">
2+
<configuration default="false" name="Examples dotnet 8" type="DotNetFolderPublish" factoryName="Publish to folder">
3+
<riderPublish configuration="Release" platform="Any CPU" target_folder="$PROJECT_DIR$/MattSourceGenHelpers.Examples/bin/Release/net8.0/publish" target_framework="net8.0" uuid_high="2267988728648713066" uuid_low="-8701392894052327047">
4+
<runtimes>
5+
<item value="win-x64" />
6+
<item value="win-x86" />
7+
<item value="win-arm" />
8+
<item value="win-arm64" />
9+
<item value="osx-x64" />
10+
<item value="osx-arm64" />
11+
<item value="linux-x64" />
12+
<item value="linux-musl-x64" />
13+
<item value="linux-arm" />
14+
<item value="linux-arm64" />
15+
</runtimes>
16+
</riderPublish>
17+
<method v="2" />
18+
</configuration>
19+
</component>

MattSourceGenHelpers.Abstractions/MattSourceGenHelpers.Abstractions.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFramework>net10.0</TargetFramework>
4+
<TargetFramework>netstandard2.0</TargetFramework>
55
<LangVersion>default</LangVersion>
66
<ImplicitUsings>enable</ImplicitUsings>
77
<Nullable>enable</Nullable>
Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,20 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFramework>net10.0</TargetFramework>
54
<LangVersion>default</LangVersion>
65
<ImplicitUsings>enable</ImplicitUsings>
76
<Nullable>enable</Nullable>
87
<EmitCompilerGeneratedFiles>true</EmitCompilerGeneratedFiles>
8+
<CompilerGeneratedFilesOutputPath>$(BaseIntermediateOutputPath)\Generated</CompilerGeneratedFilesOutputPath>
9+
<TargetFrameworks>net8.0;net10.0</TargetFrameworks>
910
</PropertyGroup>
1011

12+
<ItemGroup>
13+
<ProjectReference Include="..\MattSourceGenHelpers.Generators\MattSourceGenHelpers.Generators.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
14+
</ItemGroup>
15+
1116
<ItemGroup>
1217
<ProjectReference Include="..\MattSourceGenHelpers.Abstractions\MattSourceGenHelpers.Abstractions.csproj" />
13-
<ProjectReference Include="..\MattSourceGenHelpers.Generators\MattSourceGenHelpers.Generators.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
1418
</ItemGroup>
1519

1620
</Project>
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
### New Rules
2+
3+
Rule ID | Category | Severity | Notes
4+
--------|----------|----------|--------------------
5+
MSGH001 | GeneratesMethodGenerator | Error | GeneratesMethodGenerator
6+
MSGH002 | GeneratesMethodGenerator | Error | GeneratesMethodGenerator
7+
MSGH003 | GeneratesMethodGenerator | Disabled | GeneratesMethodGenerator
8+
MSGH004 | GeneratesMethodGenerator | Error | GeneratesMethodGenerator

MattSourceGenHelpers.Generators/GeneratesMethodGenerator.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@
33
using Microsoft.CodeAnalysis.CSharp.Syntax;
44
using System.Collections;
55
using System.Collections.Immutable;
6-
using System.Linq;
76
using System.Reflection;
87
using System.Runtime.Loader;
98
using System.Text;
10-
using System.Threading;
119

1210
namespace MattSourceGenHelpers.Generators;
1311

12+
#pragma warning disable RS1041 // This generator will only work with dotnet 8 to 10
13+
1414
[Generator]
1515
public class GeneratesMethodGenerator : IIncrementalGenerator
1616
{
Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,26 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFramework>net10.0</TargetFramework>
54
<LangVersion>default</LangVersion>
65
<ImplicitUsings>enable</ImplicitUsings>
76
<Nullable>enable</Nullable>
7+
<IsRoslynAnalyzer>true</IsRoslynAnalyzer>
88
<EnforceExtendedAnalyzerRules>true</EnforceExtendedAnalyzerRules>
9+
<TargetFrameworks>net8.0;net10.0</TargetFrameworks>
910
</PropertyGroup>
10-
11+
1112
<ItemGroup>
1213
<ProjectReference Include="..\MattSourceGenHelpers.Abstractions\MattSourceGenHelpers.Abstractions.csproj" />
1314
</ItemGroup>
1415

1516
<ItemGroup>
1617
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="5.0.0" />
1718
</ItemGroup>
19+
20+
<ItemGroup>
21+
<AdditionalFiles Include="AnalyzerReleases.Shipped.md" />
22+
<AdditionalFiles Include="AnalyzerReleases.Unshipped.md" />
23+
</ItemGroup>
24+
1825

1926
</Project>

MattSourceGenHelpers.Tests/GeneratedCodeTestHelper.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,9 @@ private static string GetGeneratedCodePath(string generatedFileName)
1515
string projectDirectory = FindProjectDirectory();
1616
string[] generatedFiles = Directory.GetFiles(projectDirectory, generatedFileName, SearchOption.AllDirectories);
1717

18-
if (generatedFiles.Length != 1)
18+
if (generatedFiles.Length == 0)
1919
{
20-
throw new AssertionException($"Expected exactly one generated file '{generatedFileName}', but found {generatedFiles.Length}.");
20+
throw new AssertionException($"Could not find expected generated file '{generatedFileName}' under {projectDirectory}{Path.DirectorySeparatorChar}**");
2121
}
2222

2323
return generatedFiles[0];

0 commit comments

Comments
 (0)