117 lines
6.2 KiB
Plaintext
117 lines
6.2 KiB
Plaintext
[
|
|
{
|
|
HintName: ProxyInterfaceGenerator.Extra.g.cs,
|
|
Source:
|
|
//----------------------------------------------------------------------------------------
|
|
// <auto-generated>
|
|
// 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.
|
|
// </auto-generated>
|
|
//----------------------------------------------------------------------------------------
|
|
|
|
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<string>())
|
|
{
|
|
}
|
|
|
|
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:
|
|
//----------------------------------------------------------------------------------------
|
|
// <auto-generated>
|
|
// 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.
|
|
// </auto-generated>
|
|
//----------------------------------------------------------------------------------------
|
|
|
|
#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*/
|
|
}
|
|
] |