Mono.Cecil.Tests.MethodBodyTests.Switch C# (CSharp) Method

Switch() private method

private Switch ( ) : void
return void
        public void Switch()
        {
            TestModule ("switch.exe", module => {
                var program = module.GetType ("Program");
                Assert.IsNotNull (program);

                var method = program.GetMethod ("Main");
                Assert.IsNotNull (method);

                AssertCode (@"
            .locals init (System.Int32 V_0)
            IL_0000: ldarg.0
            IL_0001: ldlen
            IL_0002: conv.i4
            IL_0003: stloc.0
            IL_0004: ldloc.0
            IL_0005: ldc.i4.8
            IL_0006: bgt.s IL_0026
            IL_0008: ldloc.0
            IL_0009: ldc.i4.1
            IL_000a: sub
            IL_000b: switch (IL_0032, IL_0034, IL_0038, IL_0034)
            IL_0020: ldloc.0
            IL_0021: ldc.i4.8
            IL_0022: beq.s IL_0036
            IL_0024: br.s IL_0038
            IL_0026: ldloc.0
            IL_0027: ldc.i4.s 16
            IL_0029: beq.s IL_0036
            IL_002b: ldloc.0
            IL_002c: ldc.i4.s 32
            IL_002e: beq.s IL_0036
            IL_0030: br.s IL_0038
            IL_0032: ldc.i4.0
            IL_0033: ret
            IL_0034: ldc.i4.1
            IL_0035: ret
            IL_0036: ldc.i4.2
            IL_0037: ret
            IL_0038: ldc.i4.s 42
            IL_003a: ret
            ", method);
            });
        }