/
event-il.il
136 lines (120 loc) · 4.18 KB
/
event-il.il
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
.assembly extern mscorlib
{
.ver 1:0:5000:0
.publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
}
.assembly 'event'
{
.hash algorithm 0x00008004
.ver 0:0:0:0
}
.module event.exe // GUID = {7A082A08-017B-4BB9-BDD9-105E86FCC135}
.class public auto ansi beforefieldinit T
extends [mscorlib]System.Object
{
.field private static class T/Do MyDo
// method line 1
.method public hidebysig specialname rtspecialname
instance default void .ctor () cil managed
{
// Method begins at RVA 0x20ec
// Code size 7 (0x7)
.maxstack 8
IL_0000: ldarg.0
IL_0001: call instance void object::.ctor()
IL_0006: ret
} // end of method T::.ctor
// method line 2
.method public static hidebysig specialname
default void add_MyDo (class T/Do 'value') cil managed synchronized
{
// Method begins at RVA 0x20f4
// Code size 22 (0x16)
.maxstack 8
IL_0000: ldsfld class T/Do T::MyDo
IL_0005: ldarg.0
IL_0006: call class [mscorlib]System.Delegate class [mscorlib]System.Delegate::Combine(class [mscorlib]System.Delegate, class [mscorlib]System.Delegate)
IL_000b: castclass T/Do
IL_0010: stsfld class T/Do T::MyDo
IL_0015: ret
} // end of method T::add_MyDo
// method line 3
.method public static hidebysig specialname
default void remove_MyDo (class T/Do 'value') cil managed synchronized
{
// Method begins at RVA 0x210c
// Code size 22 (0x16)
.maxstack 8
IL_0000: ldsfld class T/Do T::MyDo
IL_0005: ldarg.0
IL_0006: call class [mscorlib]System.Delegate class [mscorlib]System.Delegate::Remove(class [mscorlib]System.Delegate, class [mscorlib]System.Delegate)
IL_000b: castclass T/Do
IL_0010: stsfld class T/Do T::MyDo
IL_0015: ret
} // end of method T::remove_MyDo
.method public static hidebysig specialname
default void other1_MyDo (class T/Do 'value') cil managed synchronized
{
// Method begins at RVA 0x210c
// Code size 22 (0x16)
.maxstack 8
IL_0015: ret
} // end of method T::other1_MyDo
.method private static hidebysig specialname
default void other2_MyDo (class T/Do 'value') cil managed synchronized
{
// Method begins at RVA 0x210c
// Code size 22 (0x16)
.maxstack 8
IL_0015: ret
} // end of method T::other2_MyDo
// method line 4
.method public static hidebysig
default void Main () cil managed
{
// Method begins at RVA 0x2124
.entrypoint
// Code size 1 (0x1)
.maxstack 8
IL_0000: ret
} // end of method T::Main
.event T/Do MyDo
{
.addon default void T::add_MyDo (class T/Do 'value')
.removeon default void T::remove_MyDo (class T/Do 'value')
.other default void T::other1_MyDo (class T/Do 'value')
.other default void T::other2_MyDo (class T/Do 'value')
}
.class nested public auto ansi sealed Do
extends [mscorlib]System.MulticastDelegate
{
// method line 5
.method public hidebysig specialname rtspecialname
instance default void .ctor (object 'object', native int 'method') runtime managed
{
// Method begins at RVA 0x0
// Disassembly of native methods is not supported
} // end of method Do::.ctor
// method line 6
.method public virtual hidebysig newslot
instance default void Invoke () runtime managed
{
// Method begins at RVA 0x0
// Disassembly of native methods is not supported
} // end of method Do::Invoke
// method line 7
.method public virtual hidebysig newslot
instance default class [mscorlib]System.IAsyncResult BeginInvoke (class [mscorlib]System.AsyncCallback callback, object 'object') runtime managed
{
// Method begins at RVA 0x0
// Disassembly of native methods is not supported
} // end of method Do::BeginInvoke
// method line 8
.method public virtual hidebysig newslot
instance default void EndInvoke (class [mscorlib]System.IAsyncResult result) runtime managed
{
// Method begins at RVA 0x0
// Disassembly of native methods is not supported
} // end of method Do::EndInvoke
} // end of class Do
} // end of class T