|
|
|
@ -266,6 +266,7 @@ namespace Cxxi.Generators.CLI
@@ -266,6 +266,7 @@ namespace Cxxi.Generators.CLI
|
|
|
|
|
|
|
|
|
|
var ctx = new MarshalContext(Driver) |
|
|
|
|
{ |
|
|
|
|
ArgName = field.Name, |
|
|
|
|
ReturnVarName = variable, |
|
|
|
|
ReturnType = field.Type |
|
|
|
|
}; |
|
|
|
@ -273,6 +274,9 @@ namespace Cxxi.Generators.CLI
@@ -273,6 +274,9 @@ namespace Cxxi.Generators.CLI
|
|
|
|
|
var marshal = new CLIMarshalNativeToManagedPrinter(ctx); |
|
|
|
|
field.Visit(marshal); |
|
|
|
|
|
|
|
|
|
if (!string.IsNullOrWhiteSpace(marshal.Context.SupportBefore)) |
|
|
|
|
Write(marshal.Context.SupportBefore); |
|
|
|
|
|
|
|
|
|
WriteLine("return {0};", marshal.Context.Return); |
|
|
|
|
|
|
|
|
|
WriteCloseBraceIndent(); |
|
|
|
@ -666,10 +670,9 @@ namespace Cxxi.Generators.CLI
@@ -666,10 +670,9 @@ namespace Cxxi.Generators.CLI
|
|
|
|
|
|
|
|
|
|
if (needsReturn) |
|
|
|
|
{ |
|
|
|
|
Write("return "); |
|
|
|
|
|
|
|
|
|
var ctx = new MarshalContext(Driver) |
|
|
|
|
{ |
|
|
|
|
ArgName = "ret", |
|
|
|
|
ReturnVarName = "ret", |
|
|
|
|
ReturnType = retType |
|
|
|
|
}; |
|
|
|
@ -677,7 +680,10 @@ namespace Cxxi.Generators.CLI
@@ -677,7 +680,10 @@ namespace Cxxi.Generators.CLI
|
|
|
|
|
var marshal = new CLIMarshalNativeToManagedPrinter(ctx); |
|
|
|
|
function.ReturnType.Visit(marshal); |
|
|
|
|
|
|
|
|
|
WriteLine("{0};", marshal.Context.Return); |
|
|
|
|
if (!string.IsNullOrWhiteSpace(marshal.Context.SupportBefore)) |
|
|
|
|
Write(marshal.Context.SupportBefore); |
|
|
|
|
|
|
|
|
|
WriteLine("return {0};", marshal.Context.Return); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|