2019-08-23 11:56:54 -07:00
|
|
|
//GORB
|
|
|
|
#pragma warning disable 168
|
|
|
|
|
|
|
|
using System;
|
|
|
|
using System.Collections.Generic;
|
|
|
|
using System.Diagnostics;
|
|
|
|
using System.Threading;
|
|
|
|
|
|
|
|
//#define A
|
|
|
|
//#define B
|
|
|
|
|
|
|
|
class ClassA
|
|
|
|
{
|
|
|
|
public virtual void ClassA0()
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
public virtual void ClassA1()
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
class ClassB
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
#if B
|
|
|
|
class ClassC : ClassB
|
|
|
|
{
|
|
|
|
public override void ToString(System.String strBuffer)
|
|
|
|
{
|
|
|
|
base.ToString(strBuffer);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
#elif A
|
|
|
|
class ClassC : ClassA
|
|
|
|
{
|
|
|
|
public override void ToString(System.String strBuffer)
|
|
|
|
{
|
|
|
|
base.ToString(strBuffer);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
class ClassD
|
|
|
|
{
|
|
|
|
public String mStr;
|
|
|
|
int mA6;
|
|
|
|
|
|
|
|
public virtual void Poo()
|
|
|
|
{
|
|
|
|
PrintF("Poo\n");
|
|
|
|
}
|
|
|
|
|
|
|
|
public virtual void Poo2()
|
|
|
|
{
|
|
|
|
PrintF("Poo2\n");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
class ClassD2
|
|
|
|
{
|
|
|
|
int mA5;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
class ClassE : ClassD
|
|
|
|
{
|
|
|
|
public void Zog2()
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
class ClassF : ClassE
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
[NoDiscard("Use this value!")]
|
|
|
|
struct TestStruct
|
|
|
|
{
|
|
|
|
public int mA;
|
|
|
|
public int mB;
|
|
|
|
}
|
|
|
|
|
2019-09-03 11:17:13 -07:00
|
|
|
class Bloozer
|
2019-08-23 11:56:54 -07:00
|
|
|
{
|
2019-09-03 11:17:13 -07:00
|
|
|
int mA;
|
|
|
|
}
|
2019-08-23 11:56:54 -07:00
|
|
|
|
2019-09-04 04:44:00 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
2019-09-03 11:17:13 -07:00
|
|
|
class Blurg
|
|
|
|
{
|
|
|
|
delegate void() mFuncA;
|
|
|
|
delegate void() mFuncB;
|
2019-09-04 04:44:00 -07:00
|
|
|
|
|
|
|
|
|
|
|
void TestIt(int a, int b, int c)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
2019-09-03 11:17:13 -07:00
|
|
|
public static void Hey()
|
2019-08-23 11:56:54 -07:00
|
|
|
{
|
2019-09-03 11:17:13 -07:00
|
|
|
int a = 123;
|
|
|
|
Blurg blurg = scope .();
|
|
|
|
blurg.mFuncA = new () =>
|
|
|
|
{
|
|
|
|
PrintF("YoA!\n");
|
|
|
|
PrintF("A %d!\n", a);
|
|
|
|
PrintF("Blurg: %p\n", blurg);
|
|
|
|
};
|
2019-08-29 14:19:07 -07:00
|
|
|
|
2019-09-03 11:17:13 -07:00
|
|
|
blurg.mFuncB = new () =>
|
|
|
|
{
|
|
|
|
PrintF("YoB!\n");
|
|
|
|
};
|
2019-08-29 14:19:07 -07:00
|
|
|
|
2019-09-04 04:44:00 -07:00
|
|
|
blurg.TestIt(1, 2, 3);
|
|
|
|
blurg.[Friend]TestIt(1, 2, 3);
|
|
|
|
|
2019-09-03 11:17:13 -07:00
|
|
|
while (true)
|
2019-08-29 14:19:07 -07:00
|
|
|
{
|
2019-09-03 11:17:13 -07:00
|
|
|
blurg.mFuncA();
|
|
|
|
blurg.mFuncB();
|
2019-08-29 14:19:07 -07:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2019-08-23 11:56:54 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
class CustomAlloc
|
|
|
|
{
|
|
|
|
public void* Alloc(int size, int align)
|
|
|
|
{
|
|
|
|
//return Internal.Malloc(size);
|
|
|
|
return null;
|
|
|
|
}
|
2019-09-04 04:44:00 -07:00
|
|
|
}
|
|
|
|
|