예제 #1
0
 public S0(int f0, ulong f1, byte f2, long f3, long f4, C0 f5, uint f6, long f7, ushort f8)
 {
     F0 = f0;
     F1 = f1;
     F2 = f2;
     F3 = f3;
     F4 = f4;
     F5 = f5;
     F6 = f6;
     F7 = f7;
     F8 = f8;
 }
예제 #2
0
 public S0(sbyte f0, bool f1, C0 f2, byte f3, C0 f4, C0 f5, bool f6, ulong f7, char f8)
 {
     F0 = f0;
     F1 = f1;
     F2 = f2;
     F3 = f3;
     F4 = f4;
     F5 = f5;
     F6 = f6;
     F7 = f7;
     F8 = f8;
 }
예제 #3
0
    static uint M1(C0 arg0, int[] arg1, char[][, ] arg2)
    {
        bool vr0 = arg1[0] >= (0 & (193 + arg2[0][0, 0]));

        if (vr0)
        {
            arg0.F0 = arg0.F0;
        }

        System.Console.WriteLine((int)arg2[0][0, 0]);
        return(0);
    }
예제 #4
0
 public C1(long f0, long f1, C0 f2, short f3, C0 f4, bool f5, char f6, uint f7, char f8)
 {
     F0 = f0;
     F1 = f1;
     F2 = f2;
     F3 = f3;
     F4 = f4;
     F5 = f5;
     F6 = f6;
     F7 = f7;
     F8 = f8;
 }
예제 #5
0
    static ulong[,, ] M5(bool arg0)
    {
        long var0 = s_1.F6--;

        s_1.F0.F7 = 1U;
        C0[]  var1 = new C0[] { new C0(-2996, 2008882099U, 1, -28, 4294967295U, 2834630700U, -4666, 1368380916U), new C0(30443, 735461107U, -8856, 72, 1U, 3366168554U, 1, 1U), new C0(32767, 10U, -22346, -65, 2223668908U, 1U, -10, 2033699115U), new C0(-21499, 4294967294U, 1, 4, 1U, 3030681491U, 0, 1U), new C0(32766, 4294967294U, 32766, -124, 0U, 4294967294U, 0, 4294967295U) };
        ulong var2 = (ulong)(s_1.F0.F6-- & 1);

        return(new ulong[, , ] {
            { { 896716430632053698UL, 10UL, 5613209998712388529UL, 14452770232885656797UL, 11602252136539003599UL }, { 8790033834835683973UL, 10UL, 1UL, 12353008533131932571UL, 2UL }, { 1UL, 9991678318369306122UL, 1417418555483757432UL, 1UL, 18446744073709551614UL }, { 4369562282482349617UL, 5741473579237789260UL, 0UL, 0UL, 3487698446958004795UL }, { 12736594838733403673UL, 14597527970400761028UL, 0UL, 18446744073709551615UL, 10420391508735706117UL }, { 1UL, 1UL, 1UL, 5856695671272575571UL, 0UL }, { 9559275952496504208UL, 6302031629977123265UL, 2UL, 0UL, 2UL } }, { { 290586666213162964UL, 1440435112510727492UL, 0UL, 18446744073709551615UL, 15389044556539628401UL }, { 10UL, 0UL, 2524886632281035748UL, 12383231312386619174UL, 0UL }, { 12002808187557578099UL, 14089409107040939909UL, 7455482274965175341UL, 15662633326641901357UL, 9645194627838294272UL }, { 0UL, 0UL, 18446744073709551615UL, 1UL, 14966285351534028473UL }, { 1UL, 0UL, 4623400213037191682UL, 137546690577825201UL, 767868774054506888UL }, { 0UL, 10UL, 10UL, 8811007384651270621UL, 18446744073709551615UL }, { 1UL, 13224332548422620062UL, 0UL, 5005033255383736958UL, 4708316162106665292UL } }, { { 0UL, 958178710305443440UL, 8421224866554939471UL, 0UL, 10UL }, { 0UL, 13689474312125171320UL, 18446744073709551614UL, 15890811135064692225UL, 12413545626132418296UL }, { 1UL, 137224867345987906UL, 0UL, 18104997474481207560UL, 0UL }, { 15005078147296127924UL, 16490470838980109075UL, 6319136039919612700UL, 9955512098797198064UL, 8147227655338062682UL }, { 1UL, 9573832365375167764UL, 1UL, 0UL, 11977181861378606970UL }, { 10305276531710240143UL, 11959437841368967637UL, 17764893515629010128UL, 1UL, 0UL }, { 1UL, 8312728581178307648UL, 12640683394328200848UL, 8937230377267069880UL, 2107387276222904527UL } }, { { 1UL, 1UL, 14161300285909346826UL, 1UL, 4558889550213717161UL }, { 5429275311341396875UL, 18446744073709551614UL, 18446744073709551615UL, 1UL, 10UL }, { 4524625149920041076UL, 0UL, 11199160477235382955UL, 8814998884750698466UL, 0UL }, { 10659120349977294744UL, 0UL, 18446744073709551615UL, 11411406052583178377UL, 10425294012698284233UL }, { 15441594964430028778UL, 1857362277612196910UL, 1UL, 7678342400626334054UL, 7906438225911299729UL }, { 3928872895283732838UL, 18446744073709551614UL, 0UL, 16732203495454912602UL, 1UL }, { 1260412262061046898UL, 1UL, 15237329964264628694UL, 2UL, 2342285666606416937UL } }, { { 16894670068106823387UL, 1UL, 11840146681617294316UL, 0UL, 0UL }, { 16442674924264585064UL, 1004238489720189882UL, 1UL, 0UL, 1UL }, { 8245580173884687931UL, 13786150293857537751UL, 7261858364007323550UL, 929670327219528119UL, 0UL }, { 1UL, 0UL, 12826152951524339389UL, 1UL, 0UL }, { 5018276528390649706UL, 1UL, 9042275107654452457UL, 6969250204940345511UL, 18446744073709551615UL }, { 11400674557838504233UL, 17548945051103099324UL, 18446744073709551615UL, 0UL, 4089098771894089435UL }, { 9620438085145891566UL, 1UL, 18446744073709551615UL, 7418308423583489813UL, 0UL } }, { { 10UL, 18446744073709551615UL, 3562454674265222305UL, 0UL, 1UL }, { 13601476817926055276UL, 1UL, 1UL, 0UL, 17297860162666329042UL }, { 16789076820280495838UL, 16425997123370303906UL, 3074885065769462142UL, 8950088051571979372UL, 6122379325149753790UL }, { 1799429806783017552UL, 18446744073709551615UL, 18446744073709551614UL, 1UL, 18446744073709551614UL }, { 9137645768774341116UL, 753409949224343136UL, 0UL, 1UL, 2UL }, { 1UL, 0UL, 15441491164667606329UL, 8665054396075232495UL, 10UL }, { 1UL, 14797790590951365589UL, 0UL, 16025768623128942864UL, 0UL } }, { { 16986088033849144769UL, 18446744073709551615UL, 1UL, 18446744073709551614UL, 1UL }, { 10UL, 18446744073709551615UL, 10849774752611923231UL, 0UL, 0UL }, { 0UL, 2245902984853073865UL, 15109729989349307204UL, 16133850194325118159UL, 11245227768465649945UL }, { 0UL, 11642240337515300167UL, 1UL, 519122583645000347UL, 7424084781997203253UL }, { 664834156797107225UL, 0UL, 1UL, 6461648060154459799UL, 10144252567177442941UL }, { 17079357916094414008UL, 16379839916339142882UL, 1UL, 1UL, 1UL }, { 0UL, 18446744073709551615UL, 15265143639797084287UL, 10UL, 1UL } }, { { 18446744073709551614UL, 0UL, 0UL, 2253939432343909024UL, 18446744073709551615UL }, { 8702754247747301628UL, 14287648766498030604UL, 0UL, 1UL, 2739878632262606092UL }, { 18446744073709551614UL, 9492276609302247583UL, 14261884069418152929UL, 0UL, 18446744073709551615UL }, { 18446744073709551614UL, 15554454787008721347UL, 13892086259970330984UL, 13704860912783989365UL, 2435697907897324770UL }, { 18446744073709551614UL, 18446744073709551615UL, 5811622219736923435UL, 9173060989771568686UL, 1UL }, { 5274635553895451302UL, 0UL, 731965100725590073UL, 18446744073709551614UL, 15365116501448237666UL }, { 10743811606085353941UL, 18446744073709551615UL, 9207979534022600474UL, 1UL, 18446744073709551614UL } }
        });
    }
예제 #6
0
    static long M32(C0[] arg0, ushort[] arg1, sbyte arg2, C0 arg3, int arg4)
    {
        if (s_11)
        {
            arg0 = new C0[] { new C0(9223372036854775806L), new C0(0L), new C0(-5871471952035520285L), new C0(6593614896491043418L), new C0(9223372036854775806L), new C0(-10L) };
        }

        int[] var0 = new int[] { -1201986683, 0, 1, 0, -398218058, -467723619, -452473558, -328802172, 2125990574 };
        s_4        = 1;
        s_21[0][0] = s_20;
        return(arg3.F0);
    }
예제 #7
0
    static short M26(char arg0, S0 arg1, short arg2)
    {
        M27(s_18.F2.F0++, 65534);
        if (s_5[0])
        {
            s_2.F2.F0 = arg1.F0;
            if (true)
            {
                s_2.F2.F3 = s_2.F2.F3;
                ushort var0 = 63872;
                s_8 = 10;
                if (s_7)
                {
                    if (s_9.F3)
                    {
                        ulong var1 = 18446744073709551615UL;
                    }

                    if (s_18.F2.F3)
                    {
                        s_18.F2 = new S0(3109480372353506562L, -3420, 49, true);
                        s_20   ^= s_18.F2.F1;
                        s_21    = -7000026258264821878L;
                        C0 var2 = s_18;
                        var2.F2.F3 = true;
                    }
                    else
                    {
                        s_22 = s_2.F2;
                        ++s_4[0][0];
                    }
                }
                else
                {
                    s_22.F2 = s_19.F2.F2;
                }
            }

            s_2.F2 = s_9;
            char var3 = arg0;
            s_16 = s_16;
        }

        s_22.F2 = s_22.F2;
        int var4 = 2147483646;

        if (false)
        {
            return(32767);
        }

        return(-32767);
    }
예제 #8
0
    static int M17(C0 arg0)
    {
        {
            {
                arg0.F2 = arg0.F2;
            }
        }

        s_3        = s_3;
        arg0.F2.F0 = (int)('h' % (long)(arg0.F3++ | 1));
        return(arg0.F6.F0);
    }
예제 #9
0
 static void M0()
 {
     {
         if (true && M1())
         {
             if (s_1[0].F2.F3)
             {
                 C0 var0 = s_1[0].F2;
             }
         }
     }
 }
예제 #10
0
    static ulong M21(C0 arg0, sbyte arg1, uint arg2, int arg3, int arg4, long arg5)
    {
        if (false)
        {
            {
                arg2 = 4294967295U;
            }
        }

        arg0.F1 = arg0.F1--;
        return(s_1[0]);
    }
예제 #11
0
    public static void Main()
    {
        var vr4 = new C0();
        var vr5 = new int[] { 0 };
        var vr6 = new char[][, ] {
            new char[, ] {
                { 'k' }
            }
        };

        M1(vr4, vr5, vr6);
    }
예제 #12
0
    static long M20(sbyte arg0, uint arg1, ushort arg2, char arg3)
    {
        {
            s_8     = s_11.F4;
            s_11.F3 = s_3;
            C0 var0 = M21(s_3);
            M21(var0.F3);
        }

        s_6 = s_6;
        return(s_11.F4);
    }
예제 #13
0
    static void M0()
    {
        int var0 = (int)((-128 * (ushort)(65534 / (uint)((uint)(1 & (sbyte)((0UL & (ulong)(-9223372036854775808L % (long)((long)(18446744073709551614UL ^ (ulong)((uint)(-1179919793105633238L * (108 - (ushort)(M1((long)M1(M2((short)M2((short)M1(5422451845332906871L, new int[] { -2147483647, -1, -756634411, -1444907918, -2147483647, 886524400, -1, 1226488589, -1056231372 }), (char)(3143415928U % (sbyte)(M3() | 1)) * -1L, (sbyte)(1U ^ (ushort)M3()), new long[] { -5306611408457450675L, 2318044897245648154L, 1L, -1L, 0L }, (long)M1(M2((short)(0 & (ushort)M3()), M2(32767, (long)((char)(1UL % (byte)(M1(-9223372036854775807L, new int[] { -331030782, -1251908328, -1893365066, 2147483647, 1542499694, 1997692293, 1709609148, 2147483647, -975200795, -10 }) | 1)) * 15485), -127, new long[] { -10L, 1L, 4609153151225548231L, 814579391056389862L, 1L, 0L, -3119656256123773392L, 9223372036854775807L, -9223372036854775808L, 9223372036854775806L }, (long)M1(-2531735358315436393L, new int[] { 1194192021, -2147483647, -21186524, 1, 270478151, 2, -1365671523, 883245713, -1569676713 })), (sbyte)((sbyte)((uint)M3() ^ 0UL) + 1U), new long[] { 2L, 5768997717932742062L, -2971673738404392108L, 9223372036854775806L, -3102752253045401578L, 4878816027201924338L }, -4720341812847446202L), new int[] { 0, 1425118916 })), 9223372036854775806L, (sbyte)M1(-5332659344654103565L, new int[] { -669958512, 1, 371564839, 403563493, -1, -162633555 }), new long[] { 1246927005855916220L, 342333237271789832L, 4531405795627233907L, -8846824673828644131L, -1487897438306225194L, 3179119306362443807L }, 2L), new int[] { -634898994, 1788227482, -1814669586, 1, 0, -582588741 }), new int[] { 358759942, -2147483647, -211631944, -1087368984, -1, 2146934775 }) % (sbyte)(-1 | 1)))) / (int)(2147483647 | 1))) | 1))) % (byte)((byte)M2(3100, (long)M1(4664428605293318425L, new int[] { 687337050, 2147483646, -2147483647, -1215771685, -1 }), (sbyte)M1(1L, new int[] { 2147483646, 2147483646, 670232266 }), new long[] { -9223372036854775808L, 6910402348906931398L, -8576082469748724624L, -7699186859239239183L }, M2((short)(47134 | (ushort)M2((short)M3(), -9223372036854775808L, 126, new long[] { 0L, -4886737825476911618L, 10L, 9223372036854775807L, 2L, 1L }, M2(16422, 4212664103332942007L, 100, new long[] { -8874991460910046699L, -4077087545321912336L, 1L, 1L, 8216779287661689485L }, 4643950843450163451L))), -9223372036854775807L, (sbyte)(0 * (ulong)((char)M1(9223372036854775806L, new int[] { 1, 1, 1194357905, 1545006190, -587264827, 1536034573, 729065516 }) & 'T')), M4(s_16, 10), 0L)) | 1))) | 1))) % (uint)(1U | 1));

        s_12 = s_10;
        if (s_4)
        {
            s_5 = new C0(16571141772980842397UL, '|', -32768);
        }

        s_5.F0 = 2UL;
    }
예제 #14
0
    static sbyte[] M3(ulong[] arg0)
    {
        arg0[0] = 1743909015293511463UL;
        byte var0 = 0;

        var0 = var0;
        if ('W' != (ushort)('D' % (sbyte)((sbyte)(-25592 + (ushort)(176062580 - M4(true, new C0('c', 'e', false, 114, 1, '=', -5426829830148475868L, 1249875238594058911L)))) | 1)))
        {
            int var1 = -78557351;
            {
                if ((short)M4(true, new C0('k', 'b', true, 127, 119, 'R', -9223372036854775808L, 1L)) < s_1)
                {
                    {
                        ulong var2 = (ulong)M4(false, new C0('H', '[', true, 16, 101, '/', -1649406807118496110L, 5122261930460321587L));
                    }
                }
            }

            if (false)
            {
                var0 = (byte)(M5() - var1);
                int var3 = s_4[0];
            }
            else
            {
                M14();
                {
                    if (false && M16(M17(), s_9[0], arg0[0], (short)((sbyte)(4294967295U % (ulong)(arg0[0] | 1)) & -29311)))
                    {
                        C0 var4 = new C0('g', 'g', false, 1, 0, 'n', -8865729337190494817L, 1L);
                        s_3 = var4.F1;
                    }

                    s_2 >>= var1--;
                }
            }

            if (true)
            {
                s_4[0] = (int)(s_2 - s_7);
            }
        }
        else
        {
            s_8 = s_8;
            short var5 = 21105;
        }

        int var6 = s_4[0];

        return(new sbyte[] { -76 });
    }
예제 #15
0
    static char M4(byte arg0)
    {
        arg0 <<= 2;
        ushort var0 = (ushort)(-10 / (int)(((char)((sbyte)(0 + (short)(126 ^ (short)(27137 ^ (53048 * arg0)))) & -49) + 32766) | 1));

        var0 = var0;
        if (false)
        {
            arg0 &= arg0;
            if ('a' <= 0U)
            {
                if (false)
                {
                    {
                        int[] var1 = new int[] { 1024737796 };
                        int   var2 = var1[0];
                        arg0  = 1;
                        var1  = var1;
                        var2 &= -1606077748;
                    }

                    bool var3 = true;
                }
                else
                {
                    sbyte[] var4 = new sbyte[] { 1, 126, 0, -87, 99, -128, -40, 0, -53, -25 };
                    C0      var5 = new C0(10UL, 513410341226611911UL, -2147483647, 0L, 1671064780U, 143, 127, 22608, 0, false);
                    var4    = new sbyte[] { 0, 30, -33, 10, 65, -118 };
                    var4[0] = var5.F6;
                    var0   += var5.F7;
                    if (var5.F9)
                    {
                        var5.F6 = 126;
                        sbyte var6 = var4[0];
                    }
                    else
                    {
                        var5.F5 = var5.F8;
                    }
                }
            }
            else
            {
                var0 = 57426;
            }

            bool var7 = false;
        }

        M5(new long[] { -9070654864914149346L, 1L, 8015517668636440842L, 8296915857675483330L });
        return((char)M5(new long[] { -8737843564207994145L, -1458301299563361438L }));
    }
예제 #16
0
    static uint M13()
    {
        s_1 = s_1;
        s_2 = -32768;
        if (s_1)
        {
            M14();
            s_4 = (byte)(-1423669060 + (sbyte)M16()) >= (char)M16();
            if (s_1)
            {
                s_5 = s_5;
            }
            else
            {
                M15(1);
            }

            if (s_1)
            {
                {
                    if (true)
                    {
                        byte var0 = 0;
                        C0   var1 = new C0(819843336628166134UL, '$', -29421);
                        s_6     = 61;
                        var1.F2 = 1;
                        s_5.F1  = var1.F1;
                    }
                    else
                    {
                        M15(-2147483647);
                    }
                }
            }
        }
        else
        {
            C0   var2 = new C0(1UL, '#', 2);
            byte var3 = 1;
            if (false)
            {
                s_1 = s_1;
            }
        }

        s_3 = (long)M16();
        s_7 = s_6;
        s_2 = 0;
        C0 var4 = s_5;

        return((uint)M14());
    }
예제 #17
0
    static S1 M3(bool[][] arg0)
    {
        short var0 = 6230;

        ushort[][] var1 = new ushort[][] { new ushort[] { 22024, 2 }, new ushort[] { 1, 0, 63536, 65534, 1, 1, 28828 }, new ushort[] { 0, 63692, 3470, 2, 65535 }, new ushort[] { 0, 65534, 12062, 65535, 62383, 19020 }, new ushort[] { 65535, 1, 65535, 24130, 0, 17939 }, new ushort[] { 17795, 21327, 1 }, new ushort[] { 20382, 0, 1, 0, 0 }, new ushort[] { 1, 10, 198, 10, 2, 0 }, new ushort[] { 65534, 45565 }, new ushort[] { 65535, 65535, 20534 } };
        {
            M4();
            s_4 = new C0(32767, 13479147977851565479UL, 1, 20750, -84);
        }

        M9(9223372036854775807L);
        return(M11());
    }
예제 #18
0
    static byte M2()
    {
        {
            if (true)
            {
                M3(new ulong[] { 18446744073709551614UL, 1UL, 0UL, 6737466464606320774UL, 10770990402988115905UL, 0UL, 0UL, 0UL, 13382230202637576826UL });
                C0 var0 = new C0('I', 'J', false, 125, 175, '\\', 3330532316061955158L, 5016504866571412825L);
                M18();
            }
        }

        return(1);
    }
예제 #19
0
    static sbyte M14()
    {
        s_2 = s_2--;
        s_2 = s_2;
        {
            if (false)
            {
                C0 var0 = new C0(10, -366140311, new S0(-680945163), 2640809082419203915L, 2UL, 2164381508U, new S0(-2077895904), -1123810956, 0);
            }
        }

        return(126);
    }
예제 #20
0
 public C1(ushort f0, long f1, uint f2, C0 f3, C0 f4, ulong f5, short f6, C0 f7, uint f8, long f9)
 {
     F0 = f0;
     F1 = f1;
     F2 = f2;
     F3 = f3;
     F4 = f4;
     F5 = f5;
     F6 = f6;
     F7 = f7;
     F8 = f8;
     F9 = f9;
 }
예제 #21
0
    static char[][] M9()
    {
        if ((ulong)(s_2.F3-- | '!') <= s_4[0][0])
        {
            C0    var0 = new C0(1, 1U, new S0(-3808086372573191550L, -1999, 81, true), 127);
            short var1 = s_2.F2.F1;
            s_5 = s_5;
        }

        s_3    = s_2.F0;
        s_2.F0 = -10;
        return(s_4);
    }
예제 #22
0
    static byte M2(C0 arg0)
    {
        M3();
        arg0.F2 &= arg0.F2;
        s_1      = s_1;
        s_2      = 1UL;
        if (true)
        {
            arg0.F3 = arg0.F3;
        }

        return((byte)((uint)M8() | arg0.F3));
    }
예제 #23
0
    static long M18(C0 arg0)
    {
        if (arg0.F6)
        {
            arg0.F5.F6 = arg0.F5.F6;
            long var0 = arg0.F0;
            {
                s_2 = s_2;
            }
        }

        return(arg0.F0);
    }
예제 #24
0
    static bool M15(C0 arg0, ushort arg1)
    {
        {
            {
                ++s_2;
                M16(0);
            }

            M16(1);
        }

        return(s_1);
    }
예제 #25
0
 public C3(uint f0, C0 f1, ulong f2, long f3, ulong f4, short f5, C0 f6, long f7, short f8, int f9)
 {
     F0 = f0;
     F1 = f1;
     F2 = f2;
     F3 = f3;
     F4 = f4;
     F5 = f5;
     F6 = f6;
     F7 = f7;
     F8 = f8;
     F9 = f9;
 }
예제 #26
0
    public static void Main()
    {
        C0 vr103 = s_13.F8;

        s_8          = vr103;
        s_2[0].F6    = -19238;
        s_8.F3       = s_2[0].F6;
        s_2[0].F0.F3 = s_13.F8.F3;
        char vr119 = (char)(10L | s_2[0].F0.F3);
        uint vr86  = vr119;

        System.Console.WriteLine(vr86);
    }
예제 #27
0
    public static int Main()
    {
        var vr6 = new C0(0, false, 0, 0);

        try
        {
            M52(vr6);
        } catch (NullReferenceException ex)
        {
            return(100);
        }
        return(1);
    }
예제 #28
0
 public static bool Run()
 {
     s_1 = new C0();
     try
     {
         M0();
         return(true);
     }
     catch (NullReferenceException)
     {
         return(false);
     }
 }
예제 #29
0
 public S0(bool f0, C0 f1, C2 f2, sbyte f3, char f4, ulong f5, ushort f6, bool f7, C0 f8, long f9)
 {
     F0 = f0;
     F1 = f1;
     F2 = f2;
     F3 = f3;
     F4 = f4;
     F5 = f5;
     F6 = f6;
     F7 = f7;
     F8 = f8;
     F9 = f9;
 }
예제 #30
0
    static sbyte M15()
    {
        if (false)
        {
            if (true)
            {
                s_10 = s_10;
            }
            else
            {
                if (false)
                {
                    M16(new char[] { '^', '-', 'm', 't', '^', '7', '7' }, s_1, s_1++);
                    s_9 = s_9;
                }
                else
                {
                    s_4.F2 = s_4.F2;
                }

                s_4.F1 = 'L';
                ulong var0 = s_6;
                s_5 = s_5;
                C1 var1 = new C1(new C0(true, -128, 2, 1U), 11252902194693177380UL, 0, false, 7444849323244407374UL);
                s_5 = s_3;
            }

            s_7             = s_7;
            s_12            = (byte)M19(1U);
            s_5             = s_4.F2;
            s_8[0, 0]       = 'Z';
            s_7[0][0]       = s_10[0];
            long[][, ] var2 = new long[][, ] {
                new long[, ] {
                    { -9223372036854775807L, -2613488161368943818L, 8395013697458421479L, 2L, 9223372036854775807L }
                }, new long[, ] {
                    { -2434025999972665133L, 1L, 1L, 2L, -9223372036854775808L }
                }, new long[, ] {
                    { 9223372036854775807L, -930161501239541912L, -9223372036854775808L, 7917321917395049542L, 0L }
                }
            };
            {
                s_7[0] = s_10;
            }

            C0 var3 = new C0(false, 42, 126, 3807330386U);
            s_8[0, 0] = 'F';
        }

        return(s_1);
    }
예제 #31
0
        public void UnresolvedReferences()
        {
            var dslContainer = new DslContainerAccessor();

            var missing = new C0 { Name = "X" };

            var a = new C0 { Name = "A" }; // should be resolved
            var b = new C1 { Name = "B", Ref1 = a }; // should be resolved
            var c = new C1 { Name = "C", Ref1 = b }; // should be resolved
            var d = new C2 { Name = "D", Ref1 = c, Ref2 = missing }; // unresolved
            var i = new C1 { Name = "I", Ref1 = d }; // resolved, but references unresolved
            var j = new C1 { Name = "J", Ref1 = i }; // resolved, but indirectly references unresolved

            var e = new C1 { Name = "E" }; // should be resolved, circular reference should not be a problem
            var f = new C1 { Name = "F" }; // should be resolved, circular reference should not be a problem
            e.Ref1 = f;
            f.Ref1 = e;

            var g = new C2 { Name = "G", Ref2 = missing }; // unresolved
            var h = new C1 { Name = "H" }; // resolved, but references unresolved
            g.Ref1 = h;
            h.Ref1 = g;

            var newConcepts = dslContainer.AddNewConceptsAndReplaceReferences(new IConceptInfo[] { a }).NewUniqueConcepts;
            Assert.AreEqual("A", TestUtility.DumpSorted(newConcepts, item => ((dynamic)item).Name));
            Assert.AreEqual("A", TestUtility.DumpSorted(dslContainer.Concepts, item => ((dynamic)item).Name));

            newConcepts = dslContainer.AddNewConceptsAndReplaceReferences(new IConceptInfo[] { i, d, c, b, e, f, g, h, i, j, a }).NewUniqueConcepts;
            Assert.AreEqual("B, C, D, E, F, G, H, I, J", TestUtility.DumpSorted(newConcepts, item => ((dynamic)item).Name));
            Assert.AreEqual("A, B, C, E, F", TestUtility.DumpSorted(dslContainer.Concepts, item => ((dynamic)item).Name));

            newConcepts = dslContainer.AddNewConceptsAndReplaceReferences(new IConceptInfo[] { i, d, c, b, e, f, g, h, i, j, a }).NewUniqueConcepts;
            Assert.AreEqual("", TestUtility.DumpSorted(newConcepts, item => ((dynamic)item).Name));
            Assert.AreEqual("A, B, C, E, F", TestUtility.DumpSorted(dslContainer.Concepts, item => ((dynamic)item).Name));

            var ex = TestUtility.ShouldFail<DslSyntaxException>(
                () => dslContainer.ReportErrorForUnresolvedConcepts(),
                "Referenced concept is not defined in DSL scripts",
                missing.GetUserDescription());

            Assert.IsTrue(new IConceptInfo[] { d, i, j, g, h }
                .Any(conceptInfo => ex.Message.Contains(conceptInfo.GetUserDescription())));
        }