@@ -26,13 +26,35 @@ namespace ProxyInterfaceGenerator
|
||||
{{
|
||||
public Type Type {{ get; }}
|
||||
public bool ProxyBaseClasses {{ get; }}
|
||||
public ProxyClassAccessibility Accessibility {{ get; }}
|
||||
|
||||
public {ClassName}(Type type, bool proxyBaseClasses = false)
|
||||
public {ClassName}(Type type) : this(type, false, ProxyClassAccessibility.Public)
|
||||
{{
|
||||
}}
|
||||
|
||||
public {ClassName}(Type type, bool proxyBaseClasses) : this(type, proxyBaseClasses, ProxyClassAccessibility.Public)
|
||||
{{
|
||||
}}
|
||||
|
||||
public {ClassName}(Type type, ProxyClassAccessibility accessibility) : this(type, false, accessibility)
|
||||
{{
|
||||
}}
|
||||
|
||||
public {ClassName}(Type type, bool proxyBaseClasses, ProxyClassAccessibility accessibility)
|
||||
{{
|
||||
Type = type;
|
||||
ProxyBaseClasses = proxyBaseClasses;
|
||||
Accessibility = accessibility;
|
||||
}}
|
||||
}}
|
||||
|
||||
[Flags]
|
||||
internal enum ProxyClassAccessibility
|
||||
{{
|
||||
Public = 0,
|
||||
|
||||
Internal = 1
|
||||
}}
|
||||
}}");
|
||||
}
|
||||
}
|
||||
@@ -5,6 +5,7 @@ using ProxyInterfaceSourceGenerator.Builders;
|
||||
using ProxyInterfaceSourceGenerator.Enums;
|
||||
using ProxyInterfaceSourceGenerator.Extensions;
|
||||
using ProxyInterfaceSourceGenerator.Models;
|
||||
using ProxyInterfaceSourceGenerator.Types;
|
||||
using ProxyInterfaceSourceGenerator.Utils;
|
||||
|
||||
namespace ProxyInterfaceSourceGenerator.FileGenerators;
|
||||
@@ -88,6 +89,8 @@ internal partial class ProxyClassesGenerator : BaseGenerator, IFilesGenerator
|
||||
|
||||
var (namespaceStart, namespaceEnd) = NamespaceBuilder.Build(pd.Namespace);
|
||||
|
||||
var accessibility = pd.Accessibility == ProxyClassAccessibility.Internal ? "internal" : "public";
|
||||
|
||||
return $@"//----------------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by https://github.com/StefH/ProxyInterfaceSourceGenerator.
|
||||
@@ -101,7 +104,7 @@ internal partial class ProxyClassesGenerator : BaseGenerator, IFilesGenerator
|
||||
using System;
|
||||
|
||||
{namespaceStart}
|
||||
public {@abstract}partial class {className} : {extends}{interfaceName}
|
||||
{accessibility} {@abstract}partial class {className} : {extends}{interfaceName}
|
||||
{{
|
||||
public {@new}{targetClassSymbol.Symbol} _Instance {{ get; }}
|
||||
{instanceBaseDefinition}
|
||||
|
||||
Reference in New Issue
Block a user