// Microsoft (R) .NET Framework IL Disassembler. Version 1.1.4322.573 // Copyright (C) Microsoft Corporation 1998-2002. All rights reserved. .assembly extern mscorlib { .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4.. .ver 1:0:5000:0 } .assembly mig { // --- The following custom attribute is added automatically, do not uncomment ------- // .custom instance void [mscorlib]System.Diagnostics.DebuggableAttribute::.ctor(bool, // bool) = ( 01 00 00 01 00 00 ) .hash algorithm 0x00008004 .ver 0:0:0:0 } .module mig.exe // MVID: {49EC1543-1A76-49B1-815D-72EBA9D505AE} .imagebase 0x00400000 .subsystem 0x00000003 .file alignment 512 .corflags 0x00000001 // Image base: 0x03190000 // // ============== CLASS STRUCTURE DECLARATION ================== // .class private auto ansi beforefieldinit X extends [mscorlib]System.Object { } // end of class X .class private auto ansi beforefieldinit Do extends [mscorlib]System.Object { } // end of class Do .class private auto ansi beforefieldinit J extends [mscorlib]System.Object { } // end of class J // ============================================================= // =============== GLOBAL FIELDS AND METHODS =================== // ============================================================= // =============== CLASS MEMBERS DECLARATION =================== // note that class flags, 'extends' and 'implements' clauses // are provided here for information only .class private auto ansi beforefieldinit X extends [mscorlib]System.Object { .field private static class X my .method public hidebysig specialname static class X get_My() cil managed { // Code size 20 (0x14) .maxstack 1 .locals init (class X V_0) IL_0000: ldstr "2" IL_0005: call void [mscorlib]System.Console::WriteLine(string) IL_000a: ldsfld class X X::my IL_000f: stloc.0 IL_0010: br.s IL_0012 IL_0012: ldloc.0 IL_0013: ret } // end of method X::get_My .method private hidebysig specialname rtspecialname static void .cctor() cil managed { // Code size 11 (0xb) .maxstack 1 IL_0000: newobj instance void X::.ctor() IL_0005: stsfld class X X::my IL_000a: ret } // end of method X::.cctor .method public hidebysig specialname rtspecialname instance void .ctor() cil managed { // Code size 7 (0x7) .maxstack 1 IL_0000: ldarg.0 IL_0001: call instance void [mscorlib]System.Object::.ctor() IL_0006: ret } // end of method X::.ctor .property class X My() { .get class X X::get_My() } // end of property X::My } // end of class X .class private auto ansi beforefieldinit Do extends [mscorlib]System.Object { .method public hidebysig static void Stuff() cil managed { // Code size 11 (0xb) .maxstack 1 IL_0000: ldstr "1" IL_0005: call void [mscorlib]System.Console::WriteLine(string) IL_000a: ret } // end of method Do::Stuff .method public hidebysig specialname rtspecialname instance void .ctor() cil managed { // Code size 7 (0x7) .maxstack 1 IL_0000: ldarg.0 IL_0001: call instance void [mscorlib]System.Object::.ctor() IL_0006: ret } // end of method Do::.ctor } // end of class Do .class private auto ansi beforefieldinit J extends [mscorlib]System.Object { .method private hidebysig static void Main() cil managed { .entrypoint // Code size 12 (0xc) .maxstack 1 .locals init (object V_0) IL_0000: call void Do::Stuff() IL_0005: call class X X::get_My() IL_000a: stloc.0 IL_000b: ret } // end of method J::Main .method public hidebysig specialname rtspecialname instance void .ctor() cil managed { // Code size 7 (0x7) .maxstack 1 IL_0000: ldarg.0 IL_0001: call instance void [mscorlib]System.Object::.ctor() IL_0006: ret } // end of method J::.ctor } // end of class J // ============================================================= //*********** DISASSEMBLY COMPLETE ***********************