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); }
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); }
public void T07_CovariantArrays() { using (var ms = new MemoryStream()) { var s = new SlimSerializer(); var dIn = new C10() { FIC9s = new IC9[] { new C9_1(), new C9() } }; s.Serialize(ms, dIn); ms.Seek(0, SeekOrigin.Begin); var dOut = (C10)s.Deserialize(ms); Assert.IsInstanceOf <C9_1>(dOut.FIC9s[0]); Assert.IsInstanceOf <C9>(dOut.FIC9s[1]); } }
public void T07_CovariantArrays() { using (var ms = new MemoryStream()) { var s = new SlimSerializer(); var dIn = new C10() { FIC9s = new IC9[] { new C9_1(), new C9() } }; s.Serialize(ms, dIn); ms.Seek(0, SeekOrigin.Begin); var dOut = (C10)s.Deserialize(ms); Aver.IsTrue(dOut.FIC9s[0] is C9_1); Aver.IsTrue(dOut.FIC9s[1] is C9); } }
public static void TestI7() { var a = new C10(); I7 <int, string, bool> i = a; Assert.AreEqual(1, i.Foo()); var a1 = new C11 <int, string, bool>(); i = a1; Assert.AreEqual(1, i.Foo()); var a2 = new C12 <int, string, bool>(); I7 <I5 <int>, I5 <string>, I5 <bool> > i2 = a2; Assert.AreEqual(1, i2.Foo()); var a3 = new C13 <int, string, bool>(); I7 <I5 <I5 <int> >, I5 <I5 <string> >, I5 <I5 <bool> > > i3 = a3; Assert.AreEqual(1, i3.Foo()); }
public void Run <T1, T2, T3>(C1 <T1, T2> x1, C1 <T1[], T2> x2, dynamic dyn, T3 t3) { // Viable callables: {C2,C3,C4,C5,C6,C7}.M() x1.M(default(T1), 8); // Viable callables: {C2,C3,C4,C5,C6,C7}.{get_Prop(),set_Prop()} x1.Prop = x1.Prop; // Viable callables: {C2,C3,C4,C5,C6,C7}.{get_Item(),set_Item()} x1[default(T2)] = x1[default(T2)]; // Viable callables: {C2,C3,C4,C5,C6,C7}.{add_Event(),remove_Event()} x1.Event += () => { }; x1.Event -= () => { }; // Viable callables: {C4,C6}.M() (not C7.M(), as C7<T[]> is not constructed for any T) x2.M(new T1[0], false); // Viable callables: {C4,C6}.{get_Prop(),set_Prop()} x2.Prop = x2.Prop; // Viable callables: {C4,C6}.{get_Item(),set_Item()} x2[default(T2)] = x2[default(T2)]; // Viable callables: {C4,C6}.{add_Event(),remove_Event()} x2.Event += () => { }; x2.Event -= () => { }; // Viable callables: {C2,C6}.M() C1 <string, int> x3 = Mock <C1 <string, int> >(); x3.M("abc", 42); // Viable callables: {C2,C6}.{get_Prop(),set_Prop()} x3.Prop = x3.Prop; // Viable callables: {C2,C6}.{get_Item(),set_Item()} x3[0] = x3[0]; // Viable callables: {C2,C6}.{add_Event(),remove_Event()} x3.Event += () => { }; x3.Event -= () => { }; // Viable callables: {C2,C3,C6}.M() C1 <string, decimal> x4 = Mock <C1 <string, decimal> >(); x4.M("abc", 42d); // Viable callables: {C2,C3,C6}.{get_Prop(),set_Prop()} x4.Prop = x4.Prop; // Viable callables: {C2,C3,C6}.{get_Item(),set_Item()} x4[0M] = x4[0M]; // Viable callables: {C2,C3,C6}.{add_Event(),remove_Event()} x4.Event += () => { }; x4.Event -= () => { }; // Viable callables: {C4,C6}.M() C1 <int[], bool> x5 = Mock <C1 <int[], bool> >(); x5.M <object>(new int[] { 42 }, null); // Viable callables: {C4,C6}.{get_Prop(),set_Prop()} x5.Prop = x5.Prop; // Viable callables: {C4,C6}.{get_Item(),set_Item()} x5[false] = x5[false]; // Viable callables: {C4,C6}.{add_Event(),remove_Event()} x5.Event += () => { }; x5.Event -= () => { }; // Viable callables: {C2,C5,C6}.M() C1 <string, bool> x6 = Mock <C1 <string, bool> >(); x6.M <object>("", null); // Viable callables: {C2,C5,C6}.{get_Prop(),set_Prop()} x6.Prop = x6.Prop; // Viable callables: {C2,C5,C6}.{get_Item(),set_Item()} x6[false] = x6[false]; // Viable callables: {C2,C5,C6}.{add_Event(),remove_Event()} x6.Event += () => { }; x6.Event -= () => { }; // Viable callables: C6.M() C1 <T1, bool> x7 = new C6 <T1, bool>(); x7.M(default(T1), ""); // Viable callables: C6.{get_Prop(),set_Prop()} x7.Prop = x7.Prop; // Viable callables: C6.{get_Item(),set_Item()} x7[false] = x7[false]; // Viable callables: C6.{add_Event(),remove_Event()} x7.Event += () => { }; x7.Event -= () => { }; // Viable callables: {C8,C9}.M() dynamic d = Mock <C8>(); d.M(Mock <IEnumerable <C4 <string> > >()); // Viable callables: {C8,C9}.{get_Prop(),set_Prop()} d.Prop1 = d.Prop1; // Viable callables: {C8,C9}.{get_Item(),set_Item()} d[0] = d[0]; // Viable callables: (none) d.M(Mock <IEnumerable <C4 <int> > >()); // Viable callables: C5.M() d = 42; C5.M(d); // Viable callables: C5.set_Prop2() d = ""; C5.Prop2 = d; // Viable callables: C5.{add_Event(),remove_Event()} d = (EventHandler <string>)(() => { }); C5.Event2 += d; C5.Event2 -= d; // Viable callables: (none) d = ""; C5.M(d); // Viable callables: (none) d = 0; C5.Prop2 = d; // Viable callables: (none) C5.Event2 += d; C5.Event2 -= d; // Viable callables: C8.M2() d = new decimal[] { 0M }; C8.M2 <decimal>(d); // Viable callables: C8.M2() d = new string[] { "" }; C8.M2 <string>(d); // Viable callables: (none) d = ""; C8.M2 <object>(d); // Viable callables: C6.M() d = new C6 <T1, byte>(); d.M(default(T1), ""); // Viable callables: C6.{get_Prop(),set_Prop()} d.Prop = d.Prop; // Viable callables: C6.{get_Item(),set_Item()} d[(byte)0] = d[(byte)0]; // Viable callables: C6.{add_Event(),remove_Event()} d.Event += (EventHandler <string>)(() => { }); d.Event -= (EventHandler <string>)(() => { }); // Viable callables: C8.M3(), C9.M3() d = Mock <C8>(); d.M3(); d.M3(0); d.M3(0, 0.0); // Viable callables: {C8,C9,C10}.M3() dyn.M3(); dyn.M3(0); dyn.M3(0, 0.0); // Viable callables: {C8,C9,C10}.{get_Prop1(),set_Prop1()} dyn.Prop1 = dyn.Prop1; // Viable callables: {C2,C3,C6,C7,C8,C9,C10}.{get_Item(),set_Item()} dyn[0] = dyn[0]; // Viable callables: {C2,C3,C5,C6,C7,C8,C9}.{add_Event(),remove_Event()} dyn.Event += (EventHandler <string>)(() => { }); dyn.Event -= (EventHandler <string>)(() => { }); // Viable callables: C8.M4() dyn.M4(0, Mock <IList <string> >()); dyn.M4(0, new string[] { "" }); // Viable callables: C10.set_Prop1() dyn.Prop1 = false; // Viable callables: (none) dyn.M4(-1, new string[] { "" }); dyn.M4(0, new int[] { 0 }); // Viable callables: (none) dyn.Prop1 = 0; // Viable callables: {C2,C6}.{get_Item(),set_Item()} dyn[""] = dyn[""]; // Operator calls using dynamic types: all target int operators d = 0; d = d + 1; d = 0; d = 1 - d; d = 0; d = d + t3; // mixed with a type parameter // Operator calls using reflection: targets C10 addition operator var c = new C10(); typeof(C10).InvokeMember("op_Addition", BindingFlags.Static | BindingFlags.Public | BindingFlags.InvokeMethod, null, null, new object[] { c, c }); // Property call using reflection: targets C10 property getter/setter typeof(C10).InvokeMember("get_Prop3", BindingFlags.Static | BindingFlags.Public | BindingFlags.InvokeMethod, null, null, new object[0]); typeof(C10).InvokeMember("set_Prop3", BindingFlags.Static | BindingFlags.Public | BindingFlags.InvokeMethod, null, null, new object[] { "" }); // Indexer call using reflection: targets C10 indexer getter/setter typeof(C10).InvokeMember("get_Item", BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, c, new object[] { 0 }); typeof(C10).InvokeMember("set_Item", BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, c, new object[] { 0, true }); // Event handler call using reflection: targets C10 event adder/remover EventHandler <bool> e = () => { }; typeof(C10).InvokeMember("add_Event", BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, c, new object[] { e }); typeof(C10).InvokeMember("remove_Event", BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, c, new object[] { e }); }
// 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; } }
public void _01() { RuntimeBinderException exception = Assert.Throws <RuntimeBinderException>(() => { C10.Fn01(); }); Assert.Equal("Cannot implicitly convert type 'string' to 'int'", exception.Message); }