|
|
|
@ -315,7 +315,7 @@ namespace CppSharp.Generators.CSharp |
|
|
|
|
|
|
|
|
|
|
|
public void GenerateClass(Class @class) |
|
|
|
public void GenerateClass(Class @class) |
|
|
|
{ |
|
|
|
{ |
|
|
|
if (@class.IsIncomplete) |
|
|
|
if (!@class.IsGenerated || @class.IsIncomplete) |
|
|
|
return; |
|
|
|
return; |
|
|
|
|
|
|
|
|
|
|
|
PushBlock(CSharpBlockKind.Class); |
|
|
|
PushBlock(CSharpBlockKind.Class); |
|
|
|
@ -331,7 +331,7 @@ namespace CppSharp.Generators.CSharp |
|
|
|
GenerateClassInternals(@class); |
|
|
|
GenerateClassInternals(@class); |
|
|
|
GenerateDeclContext(@class); |
|
|
|
GenerateDeclContext(@class); |
|
|
|
|
|
|
|
|
|
|
|
if (!@class.IsGenerated || @class.IsDependent) |
|
|
|
if (@class.IsDependent) |
|
|
|
goto exit; |
|
|
|
goto exit; |
|
|
|
|
|
|
|
|
|
|
|
if (ShouldGenerateClassNativeField(@class)) |
|
|
|
if (ShouldGenerateClassNativeField(@class)) |
|
|
|
@ -706,7 +706,7 @@ namespace CppSharp.Generators.CSharp |
|
|
|
if (@class.IsUnion) |
|
|
|
if (@class.IsUnion) |
|
|
|
WriteLine("[StructLayout(LayoutKind.Explicit)]"); |
|
|
|
WriteLine("[StructLayout(LayoutKind.Explicit)]"); |
|
|
|
|
|
|
|
|
|
|
|
Write(!@class.IsGenerated ? "internal " : Helpers.GetAccess(@class.Access)); |
|
|
|
Write(@class.IsInternal ? "internal " : Helpers.GetAccess(@class.Access)); |
|
|
|
Write("unsafe "); |
|
|
|
Write("unsafe "); |
|
|
|
|
|
|
|
|
|
|
|
if (Driver.Options.GenerateAbstractImpls && @class.IsAbstract) |
|
|
|
if (Driver.Options.GenerateAbstractImpls && @class.IsAbstract) |
|
|
|
@ -788,13 +788,11 @@ namespace CppSharp.Generators.CSharp |
|
|
|
if (field.Expression != null) |
|
|
|
if (field.Expression != null) |
|
|
|
{ |
|
|
|
{ |
|
|
|
var fieldValuePrinted = field.Expression.CSharpValue(ExpressionPrinter); |
|
|
|
var fieldValuePrinted = field.Expression.CSharpValue(ExpressionPrinter); |
|
|
|
Write("{0} {1} {2} = {3};", !field.IsGenerated ? "internal" : "public", |
|
|
|
Write("public {0} {1} = {2};", fieldTypePrinted.Type, safeIdentifier, fieldValuePrinted); |
|
|
|
fieldTypePrinted.Type, safeIdentifier, fieldValuePrinted); |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
else |
|
|
|
else |
|
|
|
{ |
|
|
|
{ |
|
|
|
Write("{0} {1} {2};", !field.IsGenerated ? "internal" : "public", |
|
|
|
Write("public {0} {1};", fieldTypePrinted.Type, safeIdentifier); |
|
|
|
fieldTypePrinted.Type, safeIdentifier); |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
PopBlock(NewLineKind.BeforeNextBlock); |
|
|
|
PopBlock(NewLineKind.BeforeNextBlock); |
|
|
|
|