@@ -26,39 +26,24 @@ public string Generate()
26
26
{
27
27
using ( WriteBlock ( $ "internal class { @class } ") )
28
28
{
29
- GenerateStaticVariables ( ) ;
29
+ foreach ( var ( _, variableIdentifier ) in symbols )
30
+ WriteLine ( $ "public static IntPtr { variableIdentifier } {{ get; }}") ;
30
31
31
32
using ( WriteBlock ( $ "static { @class } ()") )
32
- GenerateStaticConstructorBody ( ) ;
33
+ {
34
+ WriteLine ( $ "var path = \" { path } \" ;") ;
35
+ WriteLine ( "var image = CppSharp.SymbolResolver.LoadImage(ref path);" ) ;
36
+ WriteLine ( "if (image == IntPtr.Zero) throw new global::System.DllNotFoundException(path);" ) ;
37
+
38
+ foreach ( var ( mangled , variableIdentifier ) in symbols )
39
+ WriteLine ( $ "{ variableIdentifier } = CppSharp.SymbolResolver.ResolveSymbol(image, \" { mangled } \" );") ;
40
+ }
33
41
}
34
42
}
35
43
36
44
return ToString ( ) ;
37
45
}
38
46
39
- public void GenerateStaticVariables ( )
40
- {
41
- foreach ( var symbol in symbols )
42
- {
43
- var variableIdentifier = symbol . Value ;
44
- WriteLine ( $ "public static IntPtr { variableIdentifier } {{ get; }}") ;
45
- }
46
- }
47
-
48
- public void GenerateStaticConstructorBody ( )
49
- {
50
- WriteLine ( $ "var path = \" { path } \" ;") ;
51
- WriteLine ( "var image = CppSharp.SymbolResolver.LoadImage(ref path);" ) ;
52
- WriteLine ( "if (image == IntPtr.Zero) throw new global::System.DllNotFoundException(path);" ) ;
53
-
54
- foreach ( var symbol in symbols )
55
- {
56
- var mangled = symbol . Key ;
57
- var variableIdentifier = symbol . Value ;
58
- WriteLine ( $ "{ variableIdentifier } = CppSharp.SymbolResolver.ResolveSymbol(image, \" { mangled } \" );") ;
59
- }
60
- }
61
-
62
47
public string GetFullVariablePath ( string mangled )
63
48
{
64
49
return $ "global::{ @namespace } .{ @class } ." + GenerateUniqueVariableIdentifier ( mangled ) ;
0 commit comments