[ { HintName: ProxyInterfaceGenerator.Extra.g.cs, Source: //---------------------------------------------------------------------------------------- // // This code was generated by https://github.com/StefH/ProxyInterfaceSourceGenerator. // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // //---------------------------------------------------------------------------------------- using System; namespace ProxyInterfaceGenerator { [AttributeUsage(AttributeTargets.Interface)] internal sealed class ProxyAttribute : Attribute { public Type Type { get; } public bool ProxyBaseClasses { get; } public ProxyClassAccessibility Accessibility { get; } public string[] MembersToIgnore { get; } public ProxyAttribute(Type type) : this(type, false, ProxyClassAccessibility.Public) { } public ProxyAttribute(Type type, bool proxyBaseClasses) : this(type, proxyBaseClasses, ProxyClassAccessibility.Public) { } public ProxyAttribute(Type type, ProxyClassAccessibility accessibility) : this(type, false, accessibility) { } public ProxyAttribute(Type type, bool proxyBaseClasses, ProxyClassAccessibility accessibility) : this(type, proxyBaseClasses, accessibility, Array.Empty()) { } public ProxyAttribute(Type type, bool proxyBaseClasses, ProxyClassAccessibility accessibility, string[] membersToIgnore) { Type = type; ProxyBaseClasses = proxyBaseClasses; Accessibility = accessibility; MembersToIgnore = membersToIgnore; } } [Flags] internal enum ProxyClassAccessibility { Public = 0, Internal = 1 } } }, { HintName: ProxyInterfaceSourceGeneratorTests.Source.IFoo2.g.cs, Source: //---------------------------------------------------------------------------------------- // // This code was generated by https://github.com/StefH/ProxyInterfaceSourceGenerator. // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // //---------------------------------------------------------------------------------------- #nullable enable using System; namespace ProxyInterfaceSourceGeneratorTests.Source { public partial interface IFoo2 { global::ProxyInterfaceSourceGeneratorTests.Source.Foo2 _Instance { get; } global::ProxyInterfaceSourceGeneratorTests.Source.IFoo2[] Foos { get; set; } global::ProxyInterfaceSourceGeneratorTests.Source.IFoo2[] DoSomethingAndGetAnArrayOfFoos(); } } #nullable restore }, { HintName: Error.g.cs, Source: /* ProxyInterfaceCodeGenerator [Exception] System.InvalidOperationException: Sequence contains no elements at System.Linq.ThrowHelper.ThrowNoElementsException() at System.Linq.Enumerable.First[TSource](IEnumerable`1 source) at System.Linq.ImmutableArrayExtensions.First[T](ImmutableArray`1 immutableArray) at ProxyInterfaceSourceGenerator.FileGenerators.ProxyClassesGenerator.GenerateOperators(ClassSymbol targetClassSymbol, ProxyData proxyData) in {SolutionDirectory}src\ProxyInterfaceSourceGenerator\FileGenerators\ProxyClassesGenerator.cs:line 350 at ProxyInterfaceSourceGenerator.FileGenerators.ProxyClassesGenerator.CreateProxyClassCode(ProxyData pd, ClassSymbol targetClassSymbol, IReadOnlyList`1 extendsProxyClasses, String interfaceName, String className, String constructorName) in {SolutionDirectory}src\ProxyInterfaceSourceGenerator\FileGenerators\ProxyClassesGenerator.cs:line 82 at ProxyInterfaceSourceGenerator.FileGenerators.ProxyClassesGenerator.TryGenerateFile(ProxyData pd, FileData& fileData) in {SolutionDirectory}src\ProxyInterfaceSourceGenerator\FileGenerators\ProxyClassesGenerator.cs:line 46 at ProxyInterfaceSourceGenerator.FileGenerators.ProxyClassesGenerator.GenerateFiles()+MoveNext() in {SolutionDirectory}src\ProxyInterfaceSourceGenerator\FileGenerators\ProxyClassesGenerator.cs:line 23 at ProxyInterfaceSourceGenerator.ProxyInterfaceCodeGenerator.GenerateProxyClasses(GeneratorExecutionContext ctx, ProxySyntaxReceiver receiver, Boolean supportsNullable) in {SolutionDirectory}src\ProxyInterfaceSourceGenerator\ProxyInterfaceCodeGenerator.cs:line 101 at ProxyInterfaceSourceGenerator.ProxyInterfaceCodeGenerator.Execute(GeneratorExecutionContext context) in {SolutionDirectory}src\ProxyInterfaceSourceGenerator\ProxyInterfaceCodeGenerator.cs:line 51 [StackTrace] at System.Linq.ThrowHelper.ThrowNoElementsException() at System.Linq.Enumerable.First[TSource](IEnumerable`1 source) at System.Linq.ImmutableArrayExtensions.First[T](ImmutableArray`1 immutableArray) at ProxyInterfaceSourceGenerator.FileGenerators.ProxyClassesGenerator.GenerateOperators(ClassSymbol targetClassSymbol, ProxyData proxyData) in {SolutionDirectory}src\ProxyInterfaceSourceGenerator\FileGenerators\ProxyClassesGenerator.cs:line 350 at ProxyInterfaceSourceGenerator.FileGenerators.ProxyClassesGenerator.CreateProxyClassCode(ProxyData pd, ClassSymbol targetClassSymbol, IReadOnlyList`1 extendsProxyClasses, String interfaceName, String className, String constructorName) in {SolutionDirectory}src\ProxyInterfaceSourceGenerator\FileGenerators\ProxyClassesGenerator.cs:line 82 at ProxyInterfaceSourceGenerator.FileGenerators.ProxyClassesGenerator.TryGenerateFile(ProxyData pd, FileData& fileData) in {SolutionDirectory}src\ProxyInterfaceSourceGenerator\FileGenerators\ProxyClassesGenerator.cs:line 46 at ProxyInterfaceSourceGenerator.FileGenerators.ProxyClassesGenerator.GenerateFiles()+MoveNext() in {SolutionDirectory}src\ProxyInterfaceSourceGenerator\FileGenerators\ProxyClassesGenerator.cs:line 23 at ProxyInterfaceSourceGenerator.ProxyInterfaceCodeGenerator.GenerateProxyClasses(GeneratorExecutionContext ctx, ProxySyntaxReceiver receiver, Boolean supportsNullable) in {SolutionDirectory}src\ProxyInterfaceSourceGenerator\ProxyInterfaceCodeGenerator.cs:line 101 at ProxyInterfaceSourceGenerator.ProxyInterfaceCodeGenerator.Execute(GeneratorExecutionContext context) in {SolutionDirectory}src\ProxyInterfaceSourceGenerator\ProxyInterfaceCodeGenerator.cs:line 51*/ } ]