Ejemplo n.º 1
0
        static int T2_LazyMap()
        {
            int sum = 0;

            for (int i = 0; i < repeats; i++)
            {
                foreach (var d in _testDataToSwitchOn)
                {
                    sum += _typeSwitchDispatch.GetIndex(d) switch
                    {
                        0 when d is C12 x => 12,
                        1 when d is C11 x => 11,
                        2 when d is C10 x => 10,
                        3 when d is C9 x => 9,
                        4 when d is C8 x => 8,
                        5 when d is C7 x => 7,
                        6 when d is C6 x => 6,
                        7 when d is C5 x => 5,
                        8 when d is C4 x => 4,
                        9 when d is C3 x => 3,
                        10 when d is C2 x => 2,
                        11 when d is C1 x => 1,
                        -1 => - 1,
                        _ => throw null,
                    };
                }
            }

            return(sum);
        }
Ejemplo n.º 2
0
        private static void TestMatch()
        {
            OneOf <C1, C2, C3, C4, C5, C6, C7, C8, C9> oo1 = new C1();

            RunTest("Match1", () => oo1.Match((C1 v) => 1).Match((C2 v) => 2).Match((C3 v) => 3).Match((C4 v) => 4).Match((C5 v) => 5).Match((C6 v) => 6).Match((C7 v) => 7).Match((C8 v) => 8).Match((C9 v) => 9));

            OneOf <C1, C2, C3, C4, C5, C6, C7, C8, C9> oo5 = new C5();

            RunTest("Match5", () => oo5.Match((C1 v) => 1).Match((C2 v) => 2).Match((C3 v) => 3).Match((C4 v) => 4).Match((C5 v) => 5).Match((C6 v) => 6).Match((C7 v) => 7).Match((C8 v) => 8).Match((C9 v) => 9));

            OneOf <C1, C2, C3, C4, C5, C6, C7, C8, C9> oo9 = new C9();

            RunTest("Match9", () => oo9.Match((C1 v) => 1).Match((C2 v) => 2).Match((C3 v) => 3).Match((C4 v) => 4).Match((C5 v) => 5).Match((C6 v) => 6).Match((C7 v) => 7).Match((C8 v) => 8).Match((C9 v) => 9));

            OneOf <C1, C2, C3, C4, C5, C6, C7, C8, C9> oo11 = new C11();

            RunTest("Match11", () => oo9.Match((C1 v) => 1).Match((C2 v) => 2).Match((C3 v) => 3).Match((C4 v) => 4).Match((C5 v) => 5).Match((C6 v) => 6).Match((C7 v) => 7).Match((C8 v) => 8).Match((C9 v) => 9));

            OneOf <C1, C2, C3, C4, C5, C6, C7, C8, C9> oo15 = new C15();

            RunTest("Match15", () => oo9.Match((C1 v) => 1).Match((C2 v) => 2).Match((C3 v) => 3).Match((C4 v) => 4).Match((C5 v) => 5).Match((C6 v) => 6).Match((C7 v) => 7).Match((C8 v) => 8).Match((C9 v) => 9));

            OneOf <C1, C2, C3, C4, C5, C6, C7, C8, C9> oo19 = new C19();

            RunTest("Match19", () => oo9.Match((C1 v) => 1).Match((C2 v) => 2).Match((C3 v) => 3).Match((C4 v) => 4).Match((C5 v) => 5).Match((C6 v) => 6).Match((C7 v) => 7).Match((C8 v) => 8).Match((C9 v) => 9));
        }
Ejemplo n.º 3
0
        public static void TestMatch()
        {
            OneOf <C1, C2, C3, C4, C5, C6, C7, C8, C9> oo1 = new C1();

            RunTest("Match1", () => oo1.Match((C1 v) => 1, (C2 v) => 2, (C3 v) => 3, (C4 v) => 4, (C5 v) => 5, (C6 v) => 6, (C7 v) => 7, (C8 v) => 8, (C9 v) => 9));

            OneOf <C1, C2, C3, C4, C5, C6, C7, C8, C9> oo5 = new C5();

            RunTest("Match5", () => oo5.Match((C1 v) => 1, (C2 v) => 2, (C3 v) => 3, (C4 v) => 4, (C5 v) => 5, (C6 v) => 6, (C7 v) => 7, (C8 v) => 8, (C9 v) => 9));

            OneOf <C1, C2, C3, C4, C5, C6, C7, C8, C9> oo9 = new C9();

            RunTest("Match9", () => oo9.Match((C1 v) => 1, (C2 v) => 2, (C3 v) => 3, (C4 v) => 4, (C5 v) => 5, (C6 v) => 6, (C7 v) => 7, (C8 v) => 8, (C9 v) => 9));

            OneOf <C1, C2, C3, C4, C5, C6, C7, C8, C9> oo11 = new C11();

            RunTest("Match11", () => oo9.Match((C1 v) => 1, (C2 v) => 2, (C3 v) => 3, (C4 v) => 4, (C5 v) => 5, (C6 v) => 6, (C7 v) => 7, (C8 v) => 8, (C9 v) => 9));

            OneOf <C1, C2, C3, C4, C5, C6, C7, C8, C9> oo15 = new C15();

            RunTest("Match15", () => oo9.Match((C1 v) => 1, (C2 v) => 2, (C3 v) => 3, (C4 v) => 4, (C5 v) => 5, (C6 v) => 6, (C7 v) => 7, (C8 v) => 8, (C9 v) => 9));

            OneOf <C1, C2, C3, C4, C5, C6, C7, C8, C9> oo19 = new C19();

            RunTest("Match19", () => oo9.Match((C1 v) => 1, (C2 v) => 2, (C3 v) => 3, (C4 v) => 4, (C5 v) => 5, (C6 v) => 6, (C7 v) => 7, (C8 v) => 8, (C9 v) => 9));
        }
Ejemplo n.º 4
0
        static int T1_TypeSwitch()
        {
            int sum = 0;

            for (int i = 0; i < repeats; i++)
            {
                foreach (var d in _testDataToSwitchOn)
                {
                    sum += d switch
                    {
                        //C40 _ => 40,
                        //C39 _ => 39,
                        //C38 _ => 38,
                        //C37 _ => 37,
                        //C36 _ => 36,
                        //C35 _ => 35,
                        //C34 _ => 34,
                        //C33 _ => 33,
                        //C32 _ => 32,
                        //C31 _ => 31,
                        //C30 _ => 30,
                        //C29 _ => 29,
                        //C28 _ => 28,
                        //C27 _ => 27,
                        //C26 _ => 26,
                        //C25 _ => 25,
                        //C24 _ => 24,
                        //C23 _ => 23,
                        //C22 _ => 22,
                        //C21 _ => 21,
                        //C20 _ => 20,
                        //C19 _ => 19,
                        //C18 _ => 18,
                        //C17 _ => 17,
                        //C16 _ => 16,
                        //C15 _ => 15,
                        //C14 _ => 14,
                        //C13 _ => 13,
                        C12 _ => 12,
                        C11 _ => 11,
                        C10 x => 10,
                        C9 x => 9,
                        C8 x => 8,
                        C7 x => 7,
                        C6 x => 6,
                        C5 x => 5,
                        C4 x => 4,
                        C3 x => 3,
                        C2 x => 2,
                        C1 x => 1,
                             _ => - 1
                    };
                }
            }

            return(sum);
        }
Ejemplo n.º 5
0
        public static void TestI6()
        {
            var         a  = new C9 <int, string>();
            I5 <int>    i1 = a;
            I6 <string> i2 = a;

            i1.Foo();
            Assert.AreEqual("I5", a.flag);

            i2.Foo();
            Assert.AreEqual("I6", a.flag);
        }
Ejemplo n.º 6
0
        public void TestOrderDerivedClassMultipleAttr()
        {
            var a = new A9D();
            var b = new B9();
            var c = new C9();
            var s = new IBuildStep[] { b, a, c };

            var sorted = Builder.SortSteps(s);

            var aidx = sorted.IndexOf(a);
            var bidx = sorted.IndexOf(b);
            var cidx = sorted.IndexOf(c);

            Assert.That(aidx, Is.LessThan(bidx));
            Assert.That(aidx, Is.LessThan(cidx));
        }
Ejemplo n.º 7
0
        public void Switch()
        {
            SwitchStatement c = new C9();

            switch (c)
            {
            case C1 c1: Noop(c1); break;

            case C2 c2: Noop(c2); break;

            case C3 c3: Noop(c3); break;

            case C4 c4: Noop(c4); break;

            case C5 c5: Noop(c5); break;

            case C6 c6: Noop(c6); break;

            case C7 c7: Noop(c7); break;

            case C8 c8: Noop(c8); break;

            case C9 c9: Noop(c9); break;

            case C10 c10: Noop(c10); break;

            case C11 c11: Noop(c11); break;

            case C12 c12: Noop(c12); break;

            case C13 c13: Noop(c13); break;

            case C14 c14: Noop(c14); break;

            case C15 c15: Noop(c15); break;

            case C16 c16: Noop(c16); break;
            }
        }
Ejemplo n.º 8
0
    // Use this for initialization
    void Start()
    {
        PlayerIcon.GetComponent <SpriteRenderer>().enabled = true;
        A1.GetComponent <SpriteRenderer>().enabled         = false;
        A2.GetComponent <SpriteRenderer>().enabled         = false;
        A3.GetComponent <SpriteRenderer>().enabled         = false;
        A4.GetComponent <SpriteRenderer>().enabled         = false;
        A5.GetComponent <SpriteRenderer>().enabled         = false;
        A6.GetComponent <SpriteRenderer>().enabled         = false;
        A7.GetComponent <SpriteRenderer>().enabled         = false;
        A8.GetComponent <SpriteRenderer>().enabled         = false;
        A9.GetComponent <SpriteRenderer>().enabled         = false;
        A10.GetComponent <SpriteRenderer>().enabled        = false;
        A11.GetComponent <SpriteRenderer>().enabled        = false;
        B1.GetComponent <SpriteRenderer>().enabled         = false;
        B2.GetComponent <SpriteRenderer>().enabled         = false;
        B3.GetComponent <SpriteRenderer>().enabled         = false;
        B4.GetComponent <SpriteRenderer>().enabled         = false;
        B5.GetComponent <SpriteRenderer>().enabled         = false;
        B6.GetComponent <SpriteRenderer>().enabled         = false;
        B7.GetComponent <SpriteRenderer>().enabled         = false;
        B8.GetComponent <SpriteRenderer>().enabled         = false;
        B9.GetComponent <SpriteRenderer>().enabled         = false;
        B10.GetComponent <SpriteRenderer>().enabled        = false;
        B11.GetComponent <SpriteRenderer>().enabled        = false;
        C1.GetComponent <SpriteRenderer>().enabled         = false;
        C2.GetComponent <SpriteRenderer>().enabled         = false;
        C3.GetComponent <SpriteRenderer>().enabled         = false;
        C4.GetComponent <SpriteRenderer>().enabled         = false;
        C5.GetComponent <SpriteRenderer>().enabled         = false;
        C6.GetComponent <SpriteRenderer>().enabled         = false;
        C7.GetComponent <SpriteRenderer>().enabled         = false;
        C8.GetComponent <SpriteRenderer>().enabled         = false;
        C9.GetComponent <SpriteRenderer>().enabled         = false;
        C10.GetComponent <SpriteRenderer>().enabled        = false;
        C11.GetComponent <SpriteRenderer>().enabled        = false;
        D1.GetComponent <SpriteRenderer>().enabled         = false;
        D2.GetComponent <SpriteRenderer>().enabled         = false;
        D3.GetComponent <SpriteRenderer>().enabled         = false;
        D4.GetComponent <SpriteRenderer>().enabled         = false;
        D5.GetComponent <SpriteRenderer>().enabled         = false;
        D6.GetComponent <SpriteRenderer>().enabled         = false;
        D7.GetComponent <SpriteRenderer>().enabled         = false;
        D8.GetComponent <SpriteRenderer>().enabled         = false;
        D9.GetComponent <SpriteRenderer>().enabled         = false;
        D10.GetComponent <SpriteRenderer>().enabled        = false;
        D11.GetComponent <SpriteRenderer>().enabled        = false;
        E1.GetComponent <SpriteRenderer>().enabled         = false;
        E2.GetComponent <SpriteRenderer>().enabled         = false;
        E3.GetComponent <SpriteRenderer>().enabled         = false;
        E4.GetComponent <SpriteRenderer>().enabled         = false;
        E5.GetComponent <SpriteRenderer>().enabled         = false;
        E6.GetComponent <SpriteRenderer>().enabled         = false;
        E7.GetComponent <SpriteRenderer>().enabled         = false;
        E8.GetComponent <SpriteRenderer>().enabled         = false;
        E9.GetComponent <SpriteRenderer>().enabled         = false;
        E10.GetComponent <SpriteRenderer>().enabled        = false;
        E11.GetComponent <SpriteRenderer>().enabled        = false;
        F1.GetComponent <SpriteRenderer>().enabled         = false;
        F2.GetComponent <SpriteRenderer>().enabled         = false;
        F3.GetComponent <SpriteRenderer>().enabled         = false;
        F4.GetComponent <SpriteRenderer>().enabled         = false;
        F5.GetComponent <SpriteRenderer>().enabled         = false;
        F6.GetComponent <SpriteRenderer>().enabled         = false;
        F7.GetComponent <SpriteRenderer>().enabled         = false;
        F8.GetComponent <SpriteRenderer>().enabled         = false;
        F9.GetComponent <SpriteRenderer>().enabled         = false;
        F10.GetComponent <SpriteRenderer>().enabled        = false;
        F11.GetComponent <SpriteRenderer>().enabled        = false;
        G1.GetComponent <SpriteRenderer>().enabled         = false;
        G2.GetComponent <SpriteRenderer>().enabled         = false;
        G3.GetComponent <SpriteRenderer>().enabled         = false;
        G4.GetComponent <SpriteRenderer>().enabled         = false;
        G5.GetComponent <SpriteRenderer>().enabled         = false;
        G6.GetComponent <SpriteRenderer>().enabled         = false;
        G7.GetComponent <SpriteRenderer>().enabled         = false;
        G8.GetComponent <SpriteRenderer>().enabled         = false;
        G9.GetComponent <SpriteRenderer>().enabled         = false;
        G10.GetComponent <SpriteRenderer>().enabled        = false;
        G11.GetComponent <SpriteRenderer>().enabled        = false;
        H1.GetComponent <SpriteRenderer>().enabled         = false;
        H2.GetComponent <SpriteRenderer>().enabled         = false;
        H3.GetComponent <SpriteRenderer>().enabled         = false;
        H4.GetComponent <SpriteRenderer>().enabled         = false;
        H5.GetComponent <SpriteRenderer>().enabled         = false;
        H6.GetComponent <SpriteRenderer>().enabled         = false;
        H7.GetComponent <SpriteRenderer>().enabled         = false;
        H8.GetComponent <SpriteRenderer>().enabled         = false;
        H9.GetComponent <SpriteRenderer>().enabled         = false;
        H10.GetComponent <SpriteRenderer>().enabled        = false;
        H11.GetComponent <SpriteRenderer>().enabled        = false;
        I1.GetComponent <SpriteRenderer>().enabled         = false;
        I2.GetComponent <SpriteRenderer>().enabled         = false;
        I3.GetComponent <SpriteRenderer>().enabled         = false;
        I4.GetComponent <SpriteRenderer>().enabled         = false;
        I5.GetComponent <SpriteRenderer>().enabled         = false;
        I6.GetComponent <SpriteRenderer>().enabled         = false;
        I7.GetComponent <SpriteRenderer>().enabled         = false;
        I8.GetComponent <SpriteRenderer>().enabled         = false;
        I9.GetComponent <SpriteRenderer>().enabled         = false;
        I10.GetComponent <SpriteRenderer>().enabled        = false;
        I11.GetComponent <SpriteRenderer>().enabled        = false;
        J1.GetComponent <SpriteRenderer>().enabled         = false;
        J2.GetComponent <SpriteRenderer>().enabled         = false;
        J3.GetComponent <SpriteRenderer>().enabled         = false;
        J4.GetComponent <SpriteRenderer>().enabled         = false;
        J5.GetComponent <SpriteRenderer>().enabled         = false;
        J6.GetComponent <SpriteRenderer>().enabled         = false;
        J7.GetComponent <SpriteRenderer>().enabled         = false;
        J8.GetComponent <SpriteRenderer>().enabled         = false;
        J9.GetComponent <SpriteRenderer>().enabled         = false;
        J10.GetComponent <SpriteRenderer>().enabled        = false;
        J11.GetComponent <SpriteRenderer>().enabled        = false;
        K1.GetComponent <SpriteRenderer>().enabled         = false;
        K2.GetComponent <SpriteRenderer>().enabled         = false;
        K3.GetComponent <SpriteRenderer>().enabled         = false;
        K4.GetComponent <SpriteRenderer>().enabled         = false;
        K5.GetComponent <SpriteRenderer>().enabled         = false;
        K6.GetComponent <SpriteRenderer>().enabled         = false;
        K7.GetComponent <SpriteRenderer>().enabled         = false;
        K8.GetComponent <SpriteRenderer>().enabled         = false;
        K9.GetComponent <SpriteRenderer>().enabled         = false;
        K10.GetComponent <SpriteRenderer>().enabled        = false;
        K11.GetComponent <SpriteRenderer>().enabled        = false;
        float ratio = Screen.width / Screen.height;

        if (ratio < 2)
        {
            int screenx = 543;
            int screeny = 653;
        }
        else
        {
            int screenx = 743;
            int screeny = 853;
        }
    }
Ejemplo n.º 9
0
        public void IfCasts()
        {
            SwitchStatement c = new C9();

            if (c is C1 c1)
            {
                Noop(c1);
            }
            else if (c is C2 c2)
            {
                Noop(c2);
            }
            else if (c is C3 c3)
            {
                Noop(c3);
            }
            else if (c is C4 c4)
            {
                Noop(c4);
            }
            else if (c is C5 c5)
            {
                Noop(c5);
            }
            else if (c is C6 c6)
            {
                Noop(c6);
            }
            else if (c is C7 c7)
            {
                Noop(c7);
            }
            else if (c is C8 c8)
            {
                Noop(c8);
            }
            else if (c is C9 c9)
            {
                Noop(c9);
            }
            else if (c is C10 c10)
            {
                Noop(c10);
            }
            else if (c is C11 c11)
            {
                Noop(c11);
            }
            else if (c is C12 c12)
            {
                Noop(c12);
            }
            else if (c is C13 c13)
            {
                Noop(c13);
            }
            else if (c is C14 c14)
            {
                Noop(c14);
            }
            else if (c is C15 c15)
            {
                Noop(c15);
            }
            else if (c is C16 c16)
            {
                Noop(c16);
            }
        }