Browse Source

Wrapped pointers to primitives as such.

Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
pull/169/head
Dimitar Dobrev 12 years ago
parent
commit
478d475661
  1. 6
      src/Generator/Generators/CLI/CLIMarshal.cs
  2. 2
      src/Generator/Generators/CLI/CLITypePrinter.cs
  3. 3
      src/Generator/Generators/CSharp/CSharpTypePrinter.cs

6
src/Generator/Generators/CLI/CLIMarshal.cs

@ -76,7 +76,7 @@ namespace CppSharp.Generators.CLI
if (pointee.IsPrimitiveType(PrimitiveType.Void)) if (pointee.IsPrimitiveType(PrimitiveType.Void))
{ {
Context.Return.Write("IntPtr({0})", Context.ReturnVarName); Context.Return.Write(Context.ReturnVarName);
return true; return true;
} }
@ -89,7 +89,7 @@ namespace CppSharp.Generators.CLI
if (pointee.IsPrimitiveType(out primitive)) if (pointee.IsPrimitiveType(out primitive))
{ {
Context.Return.Write("IntPtr({0})", Context.ReturnVarName); Context.Return.Write(Context.ReturnVarName);
return true; return true;
} }
@ -431,7 +431,7 @@ namespace CppSharp.Generators.CLI
var cppTypeName = pointer.Visit(cppTypePrinter, quals); var cppTypeName = pointer.Visit(cppTypePrinter, quals);
Context.Return.Write("({0})", cppTypeName); Context.Return.Write("({0})", cppTypeName);
Context.Return.Write("{0}.ToPointer()", Context.Parameter.Name); Context.Return.Write(Context.Parameter.Name);
return true; return true;
} }

2
src/Generator/Generators/CLI/CLITypePrinter.cs

@ -148,7 +148,7 @@ namespace CppSharp.Generators.CLI
if (param != null && (param.IsOut || param.IsInOut)) if (param != null && (param.IsOut || param.IsInOut))
return VisitPrimitiveType(primitive); return VisitPrimitiveType(primitive);
return "System::IntPtr"; return VisitPrimitiveType(primitive, quals) + "*";
} }
return pointee.Visit(this, quals); return pointee.Visit(this, quals);

3
src/Generator/Generators/CSharp/CSharpTypePrinter.cs

@ -203,9 +203,6 @@ namespace CppSharp.Generators.CSharp
if (ContextKind == CSharpTypePrinterContextKind.GenericDelegate) if (ContextKind == CSharpTypePrinterContextKind.GenericDelegate)
return "global::System.IntPtr"; return "global::System.IntPtr";
if (primitive == PrimitiveType.Void)
return "global::System.IntPtr";
return VisitPrimitiveType(primitive, quals) + "*"; return VisitPrimitiveType(primitive, quals) + "*";
} }

Loading…
Cancel
Save