version(WrapCSharp)
{
import autowrap.csharp;
immutable Modules modules=Modules(Module("foo"));
mixin(
wrapCSharp(
Modules(
Module("foo"),
),
OutputFileName("foo.cs"),
LibraryName("foo"),
RootNamespace("foo"),
),
);
}
dwave git:(wrapcsharp) ✗ cat source/foo.d
struct Foo(T)
{
T foo;
}
alias FooDouble = Foo!double;
export auto makeFooDouble(double x)
{
return FooDouble(x);
}
source/app.d-mixin-17-mixin-99(1112,80): Error: semicolon expected, not !
source/app.d-mixin-17-mixin-99(1112,80): Error: declaration expected, not !
source/app.d-mixin-17-mixin-99(1115,25): Error: function declaration without return type. (Note that constructors are always named this)
source/app.d-mixin-17-mixin-99(1115,27): Error: no identifier for declarator rt_moduleTlsCtor()
source/app.d-mixin-17-mixin-99(1116,14): Error: declaration expected, not (
source/app.d-mixin-17-mixin-99(1117,14): Error: declaration expected, not (
source/app.d-mixin-17-mixin-99(1119,25): Error: function declaration without return type. (Note that constructors are always named this)
source/app.d-mixin-17-mixin-99(1119,35): Error: no identifier for declarator __temp__.reserve(capacity)
source/app.d-mixin-17-mixin-99(1120,19): Error: unexpected ( in declarator
source/app.d-mixin-17-mixin-99(1120,20): Error: basic type expected, not cast
source/app.d-mixin-17-mixin-99(1120,20): Error: found cast when expecting )
source/app.d-mixin-17-mixin-99(1120,24): Error: no identifier for declarator pinPointer(_error_)
source/app.d-mixin-17-mixin-99(1120,24): Error: semicolon expected following function declaration
source/app.d-mixin-17-mixin-99(1120,24): Error: declaration expected, not (
source/app.d-mixin-17-mixin-99(1121,9): Error: declaration expected, not return
---
example of what's broken
extern(C) export returnValue!(foo.Foo!(double)[]) autowrap_csharp_slice_Foo_Foo!(double)Create(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
foo.Foo!(double)[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(foo.Foo!(double)[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(foo.Foo!(double)[])(__ex__);
}
}
---- full code
import core.thread : thread_attachThis, thread_detachThis;
extern(C) void rt_moduleTlsCtor();
extern(C) void rt_moduleTlsDtor();
import foo;
extern(C) export returnValue!(string[]) autowrap_csharp_slice_StringCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
string[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(string[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(string[])(__ex__);
}
}
extern(C) export returnValue!(string[]) autowrap_csharp_slice_StringSlice(string[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
string[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(string[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(string[])(__ex__);
}
}
extern(C) export returnValue!(string) autowrap_csharp_slice_StringGet(string[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(string)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(string)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_StringSet(string[] slice, size_t index, string set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(string[]) autowrap_csharp_slice_StringAppendValue(string[] slice, string append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(string[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(string[])(__ex__);
}
}
extern(C) export returnValue!(string[]) autowrap_csharp_slice_StringAppendSlice(string[] slice, string[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(string[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(string[])(__ex__);
}
}
extern(C) export returnValue!(wstring[]) autowrap_csharp_slice_WstringCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
wstring[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(wstring[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(wstring[])(__ex__);
}
}
extern(C) export returnValue!(wstring[]) autowrap_csharp_slice_WstringSlice(wstring[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
wstring[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(wstring[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(wstring[])(__ex__);
}
}
extern(C) export returnValue!(wstring) autowrap_csharp_slice_WstringGet(wstring[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(wstring)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(wstring)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_WstringSet(wstring[] slice, size_t index, wstring set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(wstring[]) autowrap_csharp_slice_WstringAppendValue(wstring[] slice, wstring append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(wstring[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(wstring[])(__ex__);
}
}
extern(C) export returnValue!(wstring[]) autowrap_csharp_slice_WstringAppendSlice(wstring[] slice, wstring[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(wstring[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(wstring[])(__ex__);
}
}
extern(C) export returnValue!(dstring[]) autowrap_csharp_slice_DstringCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
dstring[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(dstring[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(dstring[])(__ex__);
}
}
extern(C) export returnValue!(dstring[]) autowrap_csharp_slice_DstringSlice(dstring[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
dstring[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(dstring[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(dstring[])(__ex__);
}
}
extern(C) export returnValue!(dstring) autowrap_csharp_slice_DstringGet(dstring[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(dstring)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(dstring)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_DstringSet(dstring[] slice, size_t index, dstring set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(dstring[]) autowrap_csharp_slice_DstringAppendValue(dstring[] slice, dstring append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(dstring[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(dstring[])(__ex__);
}
}
extern(C) export returnValue!(dstring[]) autowrap_csharp_slice_DstringAppendSlice(dstring[] slice, dstring[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(dstring[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(dstring[])(__ex__);
}
}
extern(C) export returnValue!(bool[]) autowrap_csharp_slice_BoolCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
bool[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(bool[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(bool[])(__ex__);
}
}
extern(C) export returnValue!(bool[]) autowrap_csharp_slice_BoolSlice(bool[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
bool[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(bool[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(bool[])(__ex__);
}
}
extern(C) export returnValue!(bool) autowrap_csharp_slice_BoolGet(bool[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(bool)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(bool)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_BoolSet(bool[] slice, size_t index, bool set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(bool[]) autowrap_csharp_slice_BoolAppendValue(bool[] slice, bool append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(bool[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(bool[])(__ex__);
}
}
extern(C) export returnValue!(bool[]) autowrap_csharp_slice_BoolAppendSlice(bool[] slice, bool[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(bool[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(bool[])(__ex__);
}
}
extern(C) export returnValue!(byte[]) autowrap_csharp_slice_ByteCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
byte[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(byte[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(byte[])(__ex__);
}
}
extern(C) export returnValue!(byte[]) autowrap_csharp_slice_ByteSlice(byte[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
byte[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(byte[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(byte[])(__ex__);
}
}
extern(C) export returnValue!(byte) autowrap_csharp_slice_ByteGet(byte[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(byte)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(byte)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_ByteSet(byte[] slice, size_t index, byte set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(byte[]) autowrap_csharp_slice_ByteAppendValue(byte[] slice, byte append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(byte[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(byte[])(__ex__);
}
}
extern(C) export returnValue!(byte[]) autowrap_csharp_slice_ByteAppendSlice(byte[] slice, byte[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(byte[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(byte[])(__ex__);
}
}
extern(C) export returnValue!(ubyte[]) autowrap_csharp_slice_UbyteCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
ubyte[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(ubyte[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(ubyte[])(__ex__);
}
}
extern(C) export returnValue!(ubyte[]) autowrap_csharp_slice_UbyteSlice(ubyte[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
ubyte[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(ubyte[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(ubyte[])(__ex__);
}
}
extern(C) export returnValue!(ubyte) autowrap_csharp_slice_UbyteGet(ubyte[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(ubyte)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(ubyte)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_UbyteSet(ubyte[] slice, size_t index, ubyte set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(ubyte[]) autowrap_csharp_slice_UbyteAppendValue(ubyte[] slice, ubyte append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(ubyte[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(ubyte[])(__ex__);
}
}
extern(C) export returnValue!(ubyte[]) autowrap_csharp_slice_UbyteAppendSlice(ubyte[] slice, ubyte[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(ubyte[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(ubyte[])(__ex__);
}
}
extern(C) export returnValue!(short[]) autowrap_csharp_slice_ShortCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
short[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(short[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(short[])(__ex__);
}
}
extern(C) export returnValue!(short[]) autowrap_csharp_slice_ShortSlice(short[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
short[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(short[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(short[])(__ex__);
}
}
extern(C) export returnValue!(short) autowrap_csharp_slice_ShortGet(short[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(short)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(short)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_ShortSet(short[] slice, size_t index, short set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(short[]) autowrap_csharp_slice_ShortAppendValue(short[] slice, short append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(short[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(short[])(__ex__);
}
}
extern(C) export returnValue!(short[]) autowrap_csharp_slice_ShortAppendSlice(short[] slice, short[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(short[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(short[])(__ex__);
}
}
extern(C) export returnValue!(ushort[]) autowrap_csharp_slice_UshortCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
ushort[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(ushort[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(ushort[])(__ex__);
}
}
extern(C) export returnValue!(ushort[]) autowrap_csharp_slice_UshortSlice(ushort[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
ushort[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(ushort[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(ushort[])(__ex__);
}
}
extern(C) export returnValue!(ushort) autowrap_csharp_slice_UshortGet(ushort[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(ushort)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(ushort)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_UshortSet(ushort[] slice, size_t index, ushort set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(ushort[]) autowrap_csharp_slice_UshortAppendValue(ushort[] slice, ushort append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(ushort[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(ushort[])(__ex__);
}
}
extern(C) export returnValue!(ushort[]) autowrap_csharp_slice_UshortAppendSlice(ushort[] slice, ushort[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(ushort[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(ushort[])(__ex__);
}
}
extern(C) export returnValue!(int[]) autowrap_csharp_slice_IntCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
int[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(int[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(int[])(__ex__);
}
}
extern(C) export returnValue!(int[]) autowrap_csharp_slice_IntSlice(int[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
int[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(int[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(int[])(__ex__);
}
}
extern(C) export returnValue!(int) autowrap_csharp_slice_IntGet(int[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(int)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(int)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_IntSet(int[] slice, size_t index, int set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(int[]) autowrap_csharp_slice_IntAppendValue(int[] slice, int append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(int[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(int[])(__ex__);
}
}
extern(C) export returnValue!(int[]) autowrap_csharp_slice_IntAppendSlice(int[] slice, int[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(int[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(int[])(__ex__);
}
}
extern(C) export returnValue!(uint[]) autowrap_csharp_slice_UintCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
uint[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(uint[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(uint[])(__ex__);
}
}
extern(C) export returnValue!(uint[]) autowrap_csharp_slice_UintSlice(uint[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
uint[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(uint[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(uint[])(__ex__);
}
}
extern(C) export returnValue!(uint) autowrap_csharp_slice_UintGet(uint[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(uint)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(uint)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_UintSet(uint[] slice, size_t index, uint set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(uint[]) autowrap_csharp_slice_UintAppendValue(uint[] slice, uint append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(uint[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(uint[])(__ex__);
}
}
extern(C) export returnValue!(uint[]) autowrap_csharp_slice_UintAppendSlice(uint[] slice, uint[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(uint[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(uint[])(__ex__);
}
}
extern(C) export returnValue!(long[]) autowrap_csharp_slice_LongCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
long[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(long[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(long[])(__ex__);
}
}
extern(C) export returnValue!(long[]) autowrap_csharp_slice_LongSlice(long[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
long[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(long[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(long[])(__ex__);
}
}
extern(C) export returnValue!(long) autowrap_csharp_slice_LongGet(long[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(long)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(long)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_LongSet(long[] slice, size_t index, long set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(long[]) autowrap_csharp_slice_LongAppendValue(long[] slice, long append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(long[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(long[])(__ex__);
}
}
extern(C) export returnValue!(long[]) autowrap_csharp_slice_LongAppendSlice(long[] slice, long[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(long[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(long[])(__ex__);
}
}
extern(C) export returnValue!(ulong[]) autowrap_csharp_slice_UlongCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
ulong[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(ulong[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(ulong[])(__ex__);
}
}
extern(C) export returnValue!(ulong[]) autowrap_csharp_slice_UlongSlice(ulong[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
ulong[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(ulong[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(ulong[])(__ex__);
}
}
extern(C) export returnValue!(ulong) autowrap_csharp_slice_UlongGet(ulong[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(ulong)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(ulong)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_UlongSet(ulong[] slice, size_t index, ulong set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(ulong[]) autowrap_csharp_slice_UlongAppendValue(ulong[] slice, ulong append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(ulong[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(ulong[])(__ex__);
}
}
extern(C) export returnValue!(ulong[]) autowrap_csharp_slice_UlongAppendSlice(ulong[] slice, ulong[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(ulong[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(ulong[])(__ex__);
}
}
extern(C) export returnValue!(float[]) autowrap_csharp_slice_FloatCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
float[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(float[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(float[])(__ex__);
}
}
extern(C) export returnValue!(float[]) autowrap_csharp_slice_FloatSlice(float[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
float[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(float[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(float[])(__ex__);
}
}
extern(C) export returnValue!(float) autowrap_csharp_slice_FloatGet(float[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(float)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(float)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_FloatSet(float[] slice, size_t index, float set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(float[]) autowrap_csharp_slice_FloatAppendValue(float[] slice, float append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(float[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(float[])(__ex__);
}
}
extern(C) export returnValue!(float[]) autowrap_csharp_slice_FloatAppendSlice(float[] slice, float[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(float[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(float[])(__ex__);
}
}
extern(C) export returnValue!(double[]) autowrap_csharp_slice_DoubleCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
double[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(double[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(double[])(__ex__);
}
}
extern(C) export returnValue!(double[]) autowrap_csharp_slice_DoubleSlice(double[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
double[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(double[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(double[])(__ex__);
}
}
extern(C) export returnValue!(double) autowrap_csharp_slice_DoubleGet(double[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(double)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(double)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_DoubleSet(double[] slice, size_t index, double set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(double[]) autowrap_csharp_slice_DoubleAppendValue(double[] slice, double append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(double[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(double[])(__ex__);
}
}
extern(C) export returnValue!(double[]) autowrap_csharp_slice_DoubleAppendSlice(double[] slice, double[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(double[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(double[])(__ex__);
}
}
extern(C) export returnValue!(foo.Foo!(double)[]) autowrap_csharp_slice_Foo_Foo!(double)Create(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
foo.Foo!(double)[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(foo.Foo!(double)[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(foo.Foo!(double)[])(__ex__);
}
}
extern(C) export returnValue!(foo.Foo!(double)[]) autowrap_csharp_slice_Foo_Foo!(double)Slice(foo.Foo!(double)[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
foo.Foo!(double)[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(foo.Foo!(double)[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(foo.Foo!(double)[])(__ex__);
}
}
extern(C) export returnValue!(foo.Foo!(double)) autowrap_csharp_slice_Foo_Foo!(double)Get(foo.Foo!(double)[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(foo.Foo!(double))(slice[index]);
} catch (Exception __ex__) {
return returnValue!(foo.Foo!(double))(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_Foo_Foo!(double)Set(foo.Foo!(double)[] slice, size_t index, foo.Foo!(double) set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(foo.Foo!(double)[]) autowrap_csharp_slice_Foo_Foo!(double)AppendValue(foo.Foo!(double)[] slice, foo.Foo!(double) append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(foo.Foo!(double)[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(foo.Foo!(double)[])(__ex__);
}
}
extern(C) export returnValue!(foo.Foo!(double)[]) autowrap_csharp_slice_Foo_Foo!(double)AppendSlice(foo.Foo!(double)[] slice, foo.Foo!(double)[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(foo.Foo!(double)[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(foo.Foo!(double)[])(__ex__);
}
}
extern(C) export returnValue!(foo.Foo!(double)) autowrap_csharp_FooMakeFooDouble(double x) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(foo.Foo!(double))(makeFooDouble(x));
} catch (Exception __ex__) {
return returnValue!(foo.Foo!(double))(__ex__);
}
}
--- whole mixin
import core.thread : thread_attachThis, thread_detachThis;
extern(C) void rt_moduleTlsCtor();
extern(C) void rt_moduleTlsDtor();
import foo;
extern(C) export returnValue!(string[]) autowrap_csharp_slice_StringCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
string[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(string[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(string[])(__ex__);
}
}
extern(C) export returnValue!(string[]) autowrap_csharp_slice_StringSlice(string[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
string[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(string[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(string[])(__ex__);
}
}
extern(C) export returnValue!(string) autowrap_csharp_slice_StringGet(string[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(string)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(string)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_StringSet(string[] slice, size_t index, string set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(string[]) autowrap_csharp_slice_StringAppendValue(string[] slice, string append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(string[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(string[])(__ex__);
}
}
extern(C) export returnValue!(string[]) autowrap_csharp_slice_StringAppendSlice(string[] slice, string[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(string[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(string[])(__ex__);
}
}
extern(C) export returnValue!(wstring[]) autowrap_csharp_slice_WstringCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
wstring[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(wstring[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(wstring[])(__ex__);
}
}
extern(C) export returnValue!(wstring[]) autowrap_csharp_slice_WstringSlice(wstring[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
wstring[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(wstring[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(wstring[])(__ex__);
}
}
extern(C) export returnValue!(wstring) autowrap_csharp_slice_WstringGet(wstring[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(wstring)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(wstring)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_WstringSet(wstring[] slice, size_t index, wstring set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(wstring[]) autowrap_csharp_slice_WstringAppendValue(wstring[] slice, wstring append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(wstring[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(wstring[])(__ex__);
}
}
extern(C) export returnValue!(wstring[]) autowrap_csharp_slice_WstringAppendSlice(wstring[] slice, wstring[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(wstring[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(wstring[])(__ex__);
}
}
extern(C) export returnValue!(dstring[]) autowrap_csharp_slice_DstringCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
dstring[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(dstring[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(dstring[])(__ex__);
}
}
extern(C) export returnValue!(dstring[]) autowrap_csharp_slice_DstringSlice(dstring[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
dstring[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(dstring[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(dstring[])(__ex__);
}
}
extern(C) export returnValue!(dstring) autowrap_csharp_slice_DstringGet(dstring[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(dstring)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(dstring)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_DstringSet(dstring[] slice, size_t index, dstring set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(dstring[]) autowrap_csharp_slice_DstringAppendValue(dstring[] slice, dstring append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(dstring[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(dstring[])(__ex__);
}
}
extern(C) export returnValue!(dstring[]) autowrap_csharp_slice_DstringAppendSlice(dstring[] slice, dstring[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(dstring[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(dstring[])(__ex__);
}
}
extern(C) export returnValue!(bool[]) autowrap_csharp_slice_BoolCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
bool[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(bool[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(bool[])(__ex__);
}
}
extern(C) export returnValue!(bool[]) autowrap_csharp_slice_BoolSlice(bool[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
bool[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(bool[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(bool[])(__ex__);
}
}
extern(C) export returnValue!(bool) autowrap_csharp_slice_BoolGet(bool[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(bool)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(bool)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_BoolSet(bool[] slice, size_t index, bool set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(bool[]) autowrap_csharp_slice_BoolAppendValue(bool[] slice, bool append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(bool[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(bool[])(__ex__);
}
}
extern(C) export returnValue!(bool[]) autowrap_csharp_slice_BoolAppendSlice(bool[] slice, bool[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(bool[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(bool[])(__ex__);
}
}
extern(C) export returnValue!(byte[]) autowrap_csharp_slice_ByteCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
byte[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(byte[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(byte[])(__ex__);
}
}
extern(C) export returnValue!(byte[]) autowrap_csharp_slice_ByteSlice(byte[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
byte[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(byte[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(byte[])(__ex__);
}
}
extern(C) export returnValue!(byte) autowrap_csharp_slice_ByteGet(byte[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(byte)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(byte)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_ByteSet(byte[] slice, size_t index, byte set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(byte[]) autowrap_csharp_slice_ByteAppendValue(byte[] slice, byte append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(byte[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(byte[])(__ex__);
}
}
extern(C) export returnValue!(byte[]) autowrap_csharp_slice_ByteAppendSlice(byte[] slice, byte[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(byte[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(byte[])(__ex__);
}
}
extern(C) export returnValue!(ubyte[]) autowrap_csharp_slice_UbyteCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
ubyte[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(ubyte[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(ubyte[])(__ex__);
}
}
extern(C) export returnValue!(ubyte[]) autowrap_csharp_slice_UbyteSlice(ubyte[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
ubyte[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(ubyte[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(ubyte[])(__ex__);
}
}
extern(C) export returnValue!(ubyte) autowrap_csharp_slice_UbyteGet(ubyte[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(ubyte)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(ubyte)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_UbyteSet(ubyte[] slice, size_t index, ubyte set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(ubyte[]) autowrap_csharp_slice_UbyteAppendValue(ubyte[] slice, ubyte append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(ubyte[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(ubyte[])(__ex__);
}
}
extern(C) export returnValue!(ubyte[]) autowrap_csharp_slice_UbyteAppendSlice(ubyte[] slice, ubyte[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(ubyte[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(ubyte[])(__ex__);
}
}
extern(C) export returnValue!(short[]) autowrap_csharp_slice_ShortCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
short[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(short[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(short[])(__ex__);
}
}
extern(C) export returnValue!(short[]) autowrap_csharp_slice_ShortSlice(short[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
short[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(short[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(short[])(__ex__);
}
}
extern(C) export returnValue!(short) autowrap_csharp_slice_ShortGet(short[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(short)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(short)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_ShortSet(short[] slice, size_t index, short set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(short[]) autowrap_csharp_slice_ShortAppendValue(short[] slice, short append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(short[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(short[])(__ex__);
}
}
extern(C) export returnValue!(short[]) autowrap_csharp_slice_ShortAppendSlice(short[] slice, short[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(short[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(short[])(__ex__);
}
}
extern(C) export returnValue!(ushort[]) autowrap_csharp_slice_UshortCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
ushort[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(ushort[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(ushort[])(__ex__);
}
}
extern(C) export returnValue!(ushort[]) autowrap_csharp_slice_UshortSlice(ushort[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
ushort[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(ushort[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(ushort[])(__ex__);
}
}
extern(C) export returnValue!(ushort) autowrap_csharp_slice_UshortGet(ushort[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(ushort)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(ushort)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_UshortSet(ushort[] slice, size_t index, ushort set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(ushort[]) autowrap_csharp_slice_UshortAppendValue(ushort[] slice, ushort append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(ushort[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(ushort[])(__ex__);
}
}
extern(C) export returnValue!(ushort[]) autowrap_csharp_slice_UshortAppendSlice(ushort[] slice, ushort[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(ushort[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(ushort[])(__ex__);
}
}
extern(C) export returnValue!(int[]) autowrap_csharp_slice_IntCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
int[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(int[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(int[])(__ex__);
}
}
extern(C) export returnValue!(int[]) autowrap_csharp_slice_IntSlice(int[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
int[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(int[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(int[])(__ex__);
}
}
extern(C) export returnValue!(int) autowrap_csharp_slice_IntGet(int[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(int)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(int)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_IntSet(int[] slice, size_t index, int set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(int[]) autowrap_csharp_slice_IntAppendValue(int[] slice, int append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(int[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(int[])(__ex__);
}
}
extern(C) export returnValue!(int[]) autowrap_csharp_slice_IntAppendSlice(int[] slice, int[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(int[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(int[])(__ex__);
}
}
extern(C) export returnValue!(uint[]) autowrap_csharp_slice_UintCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
uint[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(uint[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(uint[])(__ex__);
}
}
extern(C) export returnValue!(uint[]) autowrap_csharp_slice_UintSlice(uint[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
uint[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(uint[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(uint[])(__ex__);
}
}
extern(C) export returnValue!(uint) autowrap_csharp_slice_UintGet(uint[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(uint)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(uint)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_UintSet(uint[] slice, size_t index, uint set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(uint[]) autowrap_csharp_slice_UintAppendValue(uint[] slice, uint append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(uint[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(uint[])(__ex__);
}
}
extern(C) export returnValue!(uint[]) autowrap_csharp_slice_UintAppendSlice(uint[] slice, uint[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(uint[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(uint[])(__ex__);
}
}
extern(C) export returnValue!(long[]) autowrap_csharp_slice_LongCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
long[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(long[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(long[])(__ex__);
}
}
extern(C) export returnValue!(long[]) autowrap_csharp_slice_LongSlice(long[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
long[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(long[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(long[])(__ex__);
}
}
extern(C) export returnValue!(long) autowrap_csharp_slice_LongGet(long[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(long)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(long)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_LongSet(long[] slice, size_t index, long set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(long[]) autowrap_csharp_slice_LongAppendValue(long[] slice, long append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(long[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(long[])(__ex__);
}
}
extern(C) export returnValue!(long[]) autowrap_csharp_slice_LongAppendSlice(long[] slice, long[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(long[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(long[])(__ex__);
}
}
extern(C) export returnValue!(ulong[]) autowrap_csharp_slice_UlongCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
ulong[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(ulong[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(ulong[])(__ex__);
}
}
extern(C) export returnValue!(ulong[]) autowrap_csharp_slice_UlongSlice(ulong[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
ulong[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(ulong[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(ulong[])(__ex__);
}
}
extern(C) export returnValue!(ulong) autowrap_csharp_slice_UlongGet(ulong[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(ulong)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(ulong)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_UlongSet(ulong[] slice, size_t index, ulong set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(ulong[]) autowrap_csharp_slice_UlongAppendValue(ulong[] slice, ulong append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(ulong[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(ulong[])(__ex__);
}
}
extern(C) export returnValue!(ulong[]) autowrap_csharp_slice_UlongAppendSlice(ulong[] slice, ulong[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(ulong[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(ulong[])(__ex__);
}
}
extern(C) export returnValue!(float[]) autowrap_csharp_slice_FloatCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
float[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(float[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(float[])(__ex__);
}
}
extern(C) export returnValue!(float[]) autowrap_csharp_slice_FloatSlice(float[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
float[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(float[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(float[])(__ex__);
}
}
extern(C) export returnValue!(float) autowrap_csharp_slice_FloatGet(float[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(float)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(float)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_FloatSet(float[] slice, size_t index, float set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(float[]) autowrap_csharp_slice_FloatAppendValue(float[] slice, float append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(float[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(float[])(__ex__);
}
}
extern(C) export returnValue!(float[]) autowrap_csharp_slice_FloatAppendSlice(float[] slice, float[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(float[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(float[])(__ex__);
}
}
extern(C) export returnValue!(double[]) autowrap_csharp_slice_DoubleCreate(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
double[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(double[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(double[])(__ex__);
}
}
extern(C) export returnValue!(double[]) autowrap_csharp_slice_DoubleSlice(double[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
double[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(double[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(double[])(__ex__);
}
}
extern(C) export returnValue!(double) autowrap_csharp_slice_DoubleGet(double[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(double)(slice[index]);
} catch (Exception __ex__) {
return returnValue!(double)(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_DoubleSet(double[] slice, size_t index, double set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(double[]) autowrap_csharp_slice_DoubleAppendValue(double[] slice, double append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(double[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(double[])(__ex__);
}
}
extern(C) export returnValue!(double[]) autowrap_csharp_slice_DoubleAppendSlice(double[] slice, double[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(double[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(double[])(__ex__);
}
}
extern(C) export returnValue!(foo.Foo!(double)[]) autowrap_csharp_slice_Foo_Foo!(double)Create(size_t capacity) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
foo.Foo!(double)[] __temp__;
__temp__.reserve(capacity);
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(foo.Foo!(double)[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(foo.Foo!(double)[])(__ex__);
}
}
extern(C) export returnValue!(foo.Foo!(double)[]) autowrap_csharp_slice_Foo_Foo!(double)Slice(foo.Foo!(double)[] slice, size_t begin, size_t end) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
foo.Foo!(double)[] __temp__ = slice[begin..end];
pinPointer(cast(void*)__temp__.ptr);
return returnValue!(foo.Foo!(double)[])(__temp__);
} catch (Exception __ex__) {
return returnValue!(foo.Foo!(double)[])(__ex__);
}
}
extern(C) export returnValue!(foo.Foo!(double)) autowrap_csharp_slice_Foo_Foo!(double)Get(foo.Foo!(double)[] slice, size_t index) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(foo.Foo!(double))(slice[index]);
} catch (Exception __ex__) {
return returnValue!(foo.Foo!(double))(__ex__);
}
}
extern(C) export returnVoid autowrap_csharp_slice_Foo_Foo!(double)Set(foo.Foo!(double)[] slice, size_t index, foo.Foo!(double) set) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
slice[index] = set;
return returnVoid();
} catch (Exception __ex__) {
return returnVoid(__ex__);
}
}
extern(C) export returnValue!(foo.Foo!(double)[]) autowrap_csharp_slice_Foo_Foo!(double)AppendValue(foo.Foo!(double)[] slice, foo.Foo!(double) append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(foo.Foo!(double)[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(foo.Foo!(double)[])(__ex__);
}
}
extern(C) export returnValue!(foo.Foo!(double)[]) autowrap_csharp_slice_Foo_Foo!(double)AppendSlice(foo.Foo!(double)[] slice, foo.Foo!(double)[] append) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(foo.Foo!(double)[])(slice ~= append);
} catch (Exception __ex__) {
return returnValue!(foo.Foo!(double)[])(__ex__);
}
}
extern(C) export returnValue!(foo.Foo!(double)) autowrap_csharp_FooMakeFooDouble(double x) nothrow {
try {
thread_attachThis();
rt_moduleTlsCtor();
scope(exit) rt_moduleTlsDtor();
scope(exit) thread_detachThis();
return returnValue!(foo.Foo!(double))(makeFooDouble(x));
} catch (Exception __ex__) {
return returnValue!(foo.Foo!(double))(__ex__);
}
}
ddd