Browse Source

Merge pull request #169 from ddobrev/primitive_pointers

Wrapped pointers to primitives as such
pull/154/head
João Matos 12 years ago
parent
commit
1c103ec1d0
  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 @@ -76,7 +76,7 @@ namespace CppSharp.Generators.CLI
if (pointee.IsPrimitiveType(PrimitiveType.Void))
{
Context.Return.Write("IntPtr({0})", Context.ReturnVarName);
Context.Return.Write(Context.ReturnVarName);
return true;
}
@ -89,7 +89,7 @@ namespace CppSharp.Generators.CLI @@ -89,7 +89,7 @@ namespace CppSharp.Generators.CLI
if (pointee.IsPrimitiveType(out primitive))
{
Context.Return.Write("IntPtr({0})", Context.ReturnVarName);
Context.Return.Write(Context.ReturnVarName);
return true;
}
@ -431,7 +431,7 @@ namespace CppSharp.Generators.CLI @@ -431,7 +431,7 @@ namespace CppSharp.Generators.CLI
var cppTypeName = pointer.Visit(cppTypePrinter, quals);
Context.Return.Write("({0})", cppTypeName);
Context.Return.Write("{0}.ToPointer()", Context.Parameter.Name);
Context.Return.Write(Context.Parameter.Name);
return true;
}

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

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

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

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

Loading…
Cancel
Save