.NET Decompiler with support for PDB generation, ReadyToRun, Metadata (&more) - cross-platform!
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

143 lines
3.8 KiB

.assembly extern mscorlib
{
.publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
.ver 4:0:0:0
}
.assembly _
{
.hash algorithm 0x00008004 // SHA1
.ver 0:0:0:0
}
.class public auto ansi beforefieldinit NonGenericConstrainedCallVirt
extends [mscorlib]System.Object
{
// Methods
.method public hidebysig static
void Main () cil managed
{
// Method begins at RVA 0x2050
// Code size 16 (0x10)
.entrypoint
.maxstack 8
IL_0000: ldstr "A"
IL_0005: newobj instance void C::.ctor(string)
IL_000a: call void NonGenericConstrainedCallVirt::Foo(class C)
IL_000f: ret
} // end of method NonGenericConstrainedCallVirt::Main
.method private hidebysig static
void Foo (
class C arg
) cil managed
{
// Method begins at RVA 0x2064
// Code size 25 (0x19)
.maxstack 8
IL_0000: ldarga arg
IL_0004: ldarga arg
IL_0008: call int32 NonGenericConstrainedCallVirt::Bar(class C&)
IL_000d: constrained. C
IL_0013: callvirt instance void C::Baz(int32)
IL_0018: ret
} // end of method NonGenericConstrainedCallVirt::Foo
.method private hidebysig static
int32 Bar (
class C& o
) cil managed
{
// Method begins at RVA 0x2080
// Code size 14 (0xe)
.maxstack 8
IL_0000: ldarg.0
IL_0001: ldstr "B"
IL_0006: newobj instance void C::.ctor(string)
IL_000b: stind.ref
IL_000c: ldc.i4.0
IL_000d: ret
} // end of method NonGenericConstrainedCallVirt::Bar
.method public hidebysig specialname rtspecialname
instance void .ctor () cil managed
{
// Method begins at RVA 0x2090
// Code size 7 (0x7)
.maxstack 8
IL_0000: ldarg.0
IL_0001: call instance void [mscorlib]System.Object::.ctor()
IL_0006: ret
} // end of method NonGenericConstrainedCallVirt::.ctor
} // end of class NonGenericConstrainedCallVirt
.class public auto ansi beforefieldinit C
extends [mscorlib]System.Object
{
// Fields
.field private initonly string '<Name>k__BackingField'
.custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = (
01 00 00 00
)
// Methods
.method public hidebysig specialname rtspecialname
instance void .ctor (
string n
) cil managed
{
// Method begins at RVA 0x2098
// Code size 14 (0xe)
.maxstack 8
IL_0000: ldarg.0
IL_0001: call instance void [mscorlib]System.Object::.ctor()
IL_0006: ldarg.0
IL_0007: ldarg.1
IL_0008: stfld string C::'<Name>k__BackingField'
IL_000d: ret
} // end of method C::.ctor
.method public hidebysig
instance void Baz (
int32 arg
) cil managed
{
// Method begins at RVA 0x20a8
// Code size 12 (0xc)
.maxstack 8
IL_0000: ldarg.0
IL_0001: call instance string C::get_Name()
IL_0006: call void [mscorlib]System.Console::WriteLine(string)
IL_000b: ret
} // end of method C::Baz
.method public hidebysig specialname
instance string get_Name () cil managed
{
.custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = (
01 00 00 00
)
// Method begins at RVA 0x20b8
// Code size 7 (0x7)
.maxstack 8
IL_0000: ldarg.0
IL_0001: ldfld string C::'<Name>k__BackingField'
IL_0006: ret
} // end of method C::get_Name
// Properties
.property instance string Name()
{
.get instance string C::get_Name()
}
} // end of class C