Browse Source

Struct types also need to have a default constructor taking the native instance.

pull/1/head
triton 13 years ago
parent
commit
861a979d35
  1. 15
      src/Generator/Generators/CLI/CLIHeadersTemplate.cs

15
src/Generator/Generators/CLI/CLIHeadersTemplate.cs

@ -198,20 +198,21 @@ namespace Cxxi.Generators.CLI
WriteLine("{"); WriteLine("{");
WriteLine("public:"); WriteLine("public:");
if (!@class.IsValueType) var nativeType = string.Format("::{0}*", @class.OriginalName);
if (@class.IsRefType)
{ {
PushIndent(); PushIndent();
var nativeType = string.Format("::{0}*", @class.OriginalName);
WriteLine("property {0} NativePtr;", nativeType); WriteLine("property {0} NativePtr;", nativeType);
PopIndent(); PopIndent();
NewLine(); NewLine();
// Output a default constructor that takes the native pointer.
PushIndent();
WriteLine("{0}({1} native);", SafeIdentifier(@class.Name), nativeType);
PopIndent();
} }
// Output a default constructor that takes the native pointer.
PushIndent();
WriteLine("{0}({1} native);", SafeIdentifier(@class.Name), nativeType);
PopIndent();
if (@class.IsValueType) if (@class.IsValueType)
{ {
PushIndent(); PushIndent();

Loading…
Cancel
Save