using System; namespace LibB { class LibB0 { public static int GetOverload0() where T : var { T val = default; return Overload0(val); } } } extension LibClassA { public int32 mB = GetVal(8, 100, "LibB.LibClassA.mB"); public static this() { sMagic += 100; } public ~this() { sMagic += 200; } public new this() : [NoExtension]this() { PrintF("LibB.LibClassA()\n"); mB += 100; } public new this(int32 a) { PrintF("LibB.LibClassA(int32)\n"); mB += 1000; } public int32 LibB_GetB() { return mB; } public override int GetVal4() { return 29; } } namespace LibA { extension LibA3 { public int mB = 7; this { mA += 10; } } extension LibA4 { this { mA += 10; } } } static { public static int Overload0(int16 a) { return 2; } } namespace LibSpace { static { public static int MethodB() { return 200; } } }