This repository has been archived by the owner on Jan 14, 2021. It is now read-only.
/
MainLoop.xml
315 lines (315 loc) · 12.5 KB
/
MainLoop.xml
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
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
<Type Name="MainLoop" FullName="Mono.Terminal.MainLoop">
<TypeSignature Language="C#" Value="public class MainLoop" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit MainLoop extends System.Object" />
<AssemblyInfo>
<AssemblyName>mono-curses</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Object</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<summary>
Simple main loop implementation that can be used to monitor
file descriptor, run timers and idle handlers.
</summary>
<remarks>To be added.</remarks>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public MainLoop ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters />
<Docs>
<summary>
Default constructor
</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="AddIdle">
<MemberSignature Language="C#" Value="public Func<bool> AddIdle (Func<bool> idleHandler);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance class System.Func`1<bool> AddIdle(class System.Func`1<bool> idleHandler) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Func<System.Boolean></ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="idleHandler" Type="System.Func<System.Boolean>" />
</Parameters>
<Docs>
<param name="idleHandler">To be added.</param>
<summary>
Executes the specified @idleHandler on the idle loop. The return value is a token to remove it.
</summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="AddTimeout">
<MemberSignature Language="C#" Value="public object AddTimeout (TimeSpan time, Func<Mono.Terminal.MainLoop,bool> callback);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance object AddTimeout(valuetype System.TimeSpan time, class System.Func`2<class Mono.Terminal.MainLoop, bool> callback) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Object</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="time" Type="System.TimeSpan" />
<Parameter Name="callback" Type="System.Func<Mono.Terminal.MainLoop,System.Boolean>" />
</Parameters>
<Docs>
<param name="time">To be added.</param>
<param name="callback">To be added.</param>
<summary>
Adds a timeout to the mainloop.
</summary>
<returns>To be added.</returns>
<remarks>
When time time specified passes, the callback will be invoked.
If the callback returns true, the timeout will be reset, repeating
the invocation. If it returns false, the timeout will stop.
The returned value is a token that can be used to stop the timeout
by calling RemoveTimeout.
</remarks>
</Docs>
</Member>
<Member MemberName="AddWatch">
<MemberSignature Language="C#" Value="public object AddWatch (int fileDescriptor, Mono.Terminal.MainLoop.Condition condition, Func<Mono.Terminal.MainLoop,bool> callback);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance object AddWatch(int32 fileDescriptor, valuetype Mono.Terminal.MainLoop/Condition condition, class System.Func`2<class Mono.Terminal.MainLoop, bool> callback) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Object</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="fileDescriptor" Type="System.Int32" />
<Parameter Name="condition" Type="Mono.Terminal.MainLoop+Condition" />
<Parameter Name="callback" Type="System.Func<Mono.Terminal.MainLoop,System.Boolean>" />
</Parameters>
<Docs>
<param name="fileDescriptor">To be added.</param>
<param name="condition">To be added.</param>
<param name="callback">To be added.</param>
<summary>
Watches a file descriptor for activity.
</summary>
<returns>To be added.</returns>
<remarks>
When the condition is met, the provided callback
is invoked. If the callback returns false, the
watch is automatically removed.
The return value is a token that represents this watch, you can
use this token to remove the watch by calling RemoveWatch.
</remarks>
</Docs>
</Member>
<Member MemberName="EventsPending">
<MemberSignature Language="C#" Value="public bool EventsPending (bool wait);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool EventsPending(bool wait) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="wait" Type="System.Boolean" />
</Parameters>
<Docs>
<param name="wait">To be added.</param>
<summary>
Determines whether there are pending events to be processed.
</summary>
<returns>To be added.</returns>
<remarks>
You can use this method if you want to probe if events are pending.
Typically used if you need to flush the input queue while still
running some of your own code in your main thread.
</remarks>
</Docs>
</Member>
<Member MemberName="Invoke">
<MemberSignature Language="C#" Value="public void Invoke (Mono.Terminal.Action action);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Invoke(class Mono.Terminal.Action action) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="action" Type="Mono.Terminal.Action" />
</Parameters>
<Docs>
<param name="action">To be added.</param>
<summary>
Runs @action on the thread that is processing events
</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="MainIteration">
<MemberSignature Language="C#" Value="public void MainIteration ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance void MainIteration() cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>
Runs one iteration of timers and file watches
</summary>
<remarks>
You use this to process all pending events (timers, idle handlers and file watches).
You can use it like this:
while (main.EvensPending ()) MainIteration ();
</remarks>
</Docs>
</Member>
<Member MemberName="MainIteration">
<MemberSignature Language="C#" Value="public void MainIteration (bool wait);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="wait" Type="System.Boolean" />
</Parameters>
<Docs>
<param name="wait">To be added.</param>
<summary>
Runs one iteration of timers and file watches
</summary>
<remarks>
You use this to process all pending events (timers, idle handlers and file watches).
You can use it like this:
while (main.EvensPending ()) MainIteration ();
</remarks>
</Docs>
</Member>
<Member MemberName="RemoveIdle">
<MemberSignature Language="C#" Value="public void RemoveIdle (Func<bool> idleHandler);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance void RemoveIdle(class System.Func`1<bool> idleHandler) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="idleHandler" Type="System.Func<System.Boolean>" />
</Parameters>
<Docs>
<param name="idleHandler">To be added.</param>
<summary>
Removes the specified idleHandler from processing.
</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="RemoveTimeout">
<MemberSignature Language="C#" Value="public void RemoveTimeout (object token);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance void RemoveTimeout(object token) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="token" Type="System.Object" />
</Parameters>
<Docs>
<param name="token">To be added.</param>
<summary>
Removes a previously scheduled timeout
</summary>
<remarks>
The token parameter is the value returned by AddTimeout.
</remarks>
</Docs>
</Member>
<Member MemberName="RemoveWatch">
<MemberSignature Language="C#" Value="public void RemoveWatch (object token);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance void RemoveWatch(object token) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="token" Type="System.Object" />
</Parameters>
<Docs>
<param name="token">To be added.</param>
<summary>
Removes an active watch from the mainloop.
</summary>
<remarks>
The token parameter is the value returned from AddWatch
</remarks>
</Docs>
</Member>
<Member MemberName="Run">
<MemberSignature Language="C#" Value="public void Run ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Run() cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>
Runs the mainloop.
</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="Stop">
<MemberSignature Language="C#" Value="public void Stop ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Stop() cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>
Stops the mainloop.
</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
</Members>
</Type>