1
- using ProxyInterfaceSourceGenerator . Models ;
2
-
3
- namespace ProxyInterfaceSourceGenerator . FileGenerators ;
4
-
5
- internal class ProxyAttributeGenerator : IFileGenerator
6
- {
7
- private const string ClassName = "ProxyAttribute " ;
8
-
9
- public FileData GenerateFile ( )
10
- {
11
- return new FileData ( $ "ProxyInterfaceGenerator. { ClassName } .g.cs ", $@ "//----------------------------------------------------------------------------------------
12
- // <auto-generated>
13
- // This code was generated by https://github.com/StefH/ProxyInterfaceSourceGenerator.
14
- //
15
- // Changes to this file may cause incorrect behavior and will be lost if
16
- // the code is regenerated.
17
- // </auto-generated>
18
- //----------------------------------------------------------------------------------------
19
-
20
- using System;
21
-
22
- namespace ProxyInterfaceGenerator
23
- {{
24
- [AttributeUsage(AttributeTargets.Interface)]
25
- public class { ClassName } : Attribute
26
- {{
27
- public Type Type {{ get; }}
28
- public bool ProxyBaseClasses {{ get; }}
29
- public ProxyClassAccessibility Accessibility {{ get; }}
30
-
31
- public { ClassName } (Type type) : this(type, false, ProxyClassAccessibility.Public)
32
- {{
33
- }}
34
-
35
- public { ClassName } (Type type, bool proxyBaseClasses) : this(type, proxyBaseClasses, ProxyClassAccessibility.Public)
36
- {{
37
- }}
38
-
39
- public { ClassName } (Type type, ProxyClassAccessibility accessibility) : this(type, false, accessibility)
40
- {{
41
- }}
42
-
43
- public { ClassName } (Type type, bool proxyBaseClasses, ProxyClassAccessibility accessibility)
44
- {{
45
- Type = type;
46
- ProxyBaseClasses = proxyBaseClasses;
47
- Accessibility = accessibility;
48
- }}
49
- }}
50
-
51
- [Flags]
52
- public enum ProxyClassAccessibility
53
- {{
54
- Public = 0,
55
-
56
- Internal = 1
57
- }}
58
- }}" ) ;
59
- }
1
+ using ProxyInterfaceSourceGenerator . Models ;
2
+
3
+ namespace ProxyInterfaceSourceGenerator . FileGenerators ;
4
+
5
+ internal class ExtraFilesGenerator : IFileGenerator
6
+ {
7
+ private const string Name = "ProxyInterfaceGenerator.Extra.g.cs " ;
8
+
9
+ public FileData GenerateFile ( )
10
+ {
11
+ return new FileData ( $ "{ Name } ", $@ "//----------------------------------------------------------------------------------------
12
+ // <auto-generated>
13
+ // This code was generated by https://github.com/StefH/ProxyInterfaceSourceGenerator.
14
+ //
15
+ // Changes to this file may cause incorrect behavior and will be lost if
16
+ // the code is regenerated.
17
+ // </auto-generated>
18
+ //----------------------------------------------------------------------------------------
19
+
20
+ using System;
21
+
22
+ namespace ProxyInterfaceGenerator
23
+ {{
24
+ [AttributeUsage(AttributeTargets.Interface)]
25
+ internal sealed class ProxyAttribute : Attribute
26
+ {{
27
+ public Type Type {{ get; }}
28
+ public bool ProxyBaseClasses {{ get; }}
29
+ public ProxyClassAccessibility Accessibility {{ get; }}
30
+
31
+ public ProxyAttribute (Type type) : this(type, false, ProxyClassAccessibility.Public)
32
+ {{
33
+ }}
34
+
35
+ public ProxyAttribute (Type type, bool proxyBaseClasses) : this(type, proxyBaseClasses, ProxyClassAccessibility.Public)
36
+ {{
37
+ }}
38
+
39
+ public ProxyAttribute (Type type, ProxyClassAccessibility accessibility) : this(type, false, accessibility)
40
+ {{
41
+ }}
42
+
43
+ public ProxyAttribute (Type type, bool proxyBaseClasses, ProxyClassAccessibility accessibility)
44
+ {{
45
+ Type = type;
46
+ ProxyBaseClasses = proxyBaseClasses;
47
+ Accessibility = accessibility;
48
+ }}
49
+ }}
50
+
51
+ [Flags]
52
+ internal enum ProxyClassAccessibility
53
+ {{
54
+ Public = 0,
55
+
56
+ Internal = 1
57
+ }}
58
+ }}" ) ;
59
+ }
60
60
}
0 commit comments