103 lines
2.8 KiB
Plaintext
103 lines
2.8 KiB
Plaintext
|
.assembly 'namespace' { }
|
||
|
.assembly extern 'mscorlib' {
|
||
|
.ver 1:0:5000:0
|
||
|
.publickeytoken = ( b7 7a 5c 56 19 34 e0 89 )
|
||
|
}
|
||
|
.namespace N {
|
||
|
.class 'A'
|
||
|
extends [mscorlib]System.Object
|
||
|
{
|
||
|
.method hidebysig instance void 'f'() {
|
||
|
ldstr "A.f()"
|
||
|
call void [mscorlib]System.Console::'WriteLine'(string)
|
||
|
ret
|
||
|
.maxstack 1
|
||
|
} // end of method N.A.f
|
||
|
.method hidebysig static void 'g'() {
|
||
|
ldstr "A.g()"
|
||
|
call void [mscorlib]System.Console::'WriteLine'(string)
|
||
|
ret
|
||
|
.maxstack 1
|
||
|
} // end of method N.A.g
|
||
|
.class nested public 'X'
|
||
|
extends [mscorlib]System.Object
|
||
|
{
|
||
|
.method hidebysig specialname rtspecialname public void .ctor() {
|
||
|
ldarg.0
|
||
|
call instance void [mscorlib]System.Object::.ctor()
|
||
|
ret
|
||
|
.maxstack 1
|
||
|
} // end of constructor N.A.X.X
|
||
|
} // end of class N.A.X
|
||
|
.field public static class 'N.A/X' 'x'
|
||
|
.method hidebysig specialname rtspecialname public void .ctor() {
|
||
|
ldarg.0
|
||
|
call instance void [mscorlib]System.Object::.ctor()
|
||
|
ret
|
||
|
.maxstack 1
|
||
|
} // end of constructor N.A.A
|
||
|
} // end of class N.A
|
||
|
.class 'B'
|
||
|
extends 'N.A'
|
||
|
{
|
||
|
.field public int32 'f'
|
||
|
.method hidebysig public newslot static void 'g'() {
|
||
|
ldstr "B.g()"
|
||
|
call void [mscorlib]System.Console::'WriteLine'(string)
|
||
|
newobj instance void 'N.A/X'::.ctor()
|
||
|
stsfld class 'N.A/X' 'N.A'::'x'
|
||
|
ret
|
||
|
.maxstack 1
|
||
|
} // end of method N.B.g
|
||
|
.method hidebysig specialname rtspecialname public void .ctor() {
|
||
|
ldarg.0
|
||
|
ldc.i4 51
|
||
|
conv.i4
|
||
|
stfld int32 'N.B'::'f'
|
||
|
ldarg.0
|
||
|
call instance void 'N.A'::.ctor()
|
||
|
ret
|
||
|
.maxstack 2
|
||
|
} // end of constructor N.B.B
|
||
|
} // end of class N.B
|
||
|
} // end of namespace N
|
||
|
.class 'test'
|
||
|
extends [mscorlib]System.Object
|
||
|
{
|
||
|
.field public static class [mscorlib]System.IO.TextWriter 'w'
|
||
|
.method hidebysig public static void 'Main'() {
|
||
|
.entrypoint
|
||
|
.locals init ([0]class 'N.B' 't0')
|
||
|
newobj instance void 'N.B'::.ctor()
|
||
|
stloc 0 // a
|
||
|
ldsfld class [mscorlib]System.IO.TextWriter 'test'::'w'
|
||
|
ldstr "a.f={0}"
|
||
|
ldloc 0 // a
|
||
|
ldfld int32 'N.B'::'f'
|
||
|
box int32
|
||
|
callvirt instance void [mscorlib]System.IO.TextWriter::'WriteLine'(string,object)
|
||
|
ldloc 0 // a
|
||
|
call instance void 'N.A'::'f'()
|
||
|
call void 'N.A'::'g'()
|
||
|
call void 'N.B'::'g'()
|
||
|
ldsfld class [mscorlib]System.IO.TextWriter 'test'::'w'
|
||
|
ldstr "A.x={0}"
|
||
|
ldsfld class 'N.A/X' 'N.A'::'x'
|
||
|
callvirt instance void [mscorlib]System.IO.TextWriter::'WriteLine'(string,object)
|
||
|
ret
|
||
|
.maxstack 3
|
||
|
} // end of method test.Main
|
||
|
.method hidebysig specialname rtspecialname public void .ctor() {
|
||
|
ldarg.0
|
||
|
call instance void [mscorlib]System.Object::.ctor()
|
||
|
ret
|
||
|
.maxstack 1
|
||
|
} // end of constructor test.test
|
||
|
.method hidebysig specialname rtspecialname static private void .cctor() {
|
||
|
call class [mscorlib]System.IO.TextWriter [mscorlib]System.Console::'get_Out'()
|
||
|
stsfld class [mscorlib]System.IO.TextWriter 'test'::'w'
|
||
|
ret
|
||
|
.maxstack 1
|
||
|
} // end of constructor test.test
|
||
|
} // end of class test
|