-
Notifications
You must be signed in to change notification settings - Fork 851
Expand file tree
/
Copy pathevent.fsi
More file actions
79 lines (66 loc) · 3.02 KB
/
event.fsi
File metadata and controls
79 lines (66 loc) · 3.02 KB
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
// Copyright (c) Microsoft Corporation. All Rights Reserved. See License.txt in the project root for license information.
namespace Microsoft.FSharp.Control
open System
open Microsoft.FSharp.Core
open Microsoft.FSharp.Control
/// <summary>Event implementations for an arbitrary type of delegate.</summary>
///
/// <category index="3">Events and Observables</category>
[<CompiledName("FSharpDelegateEvent`1")>]
type DelegateEvent<'Delegate when 'Delegate :> Delegate and 'Delegate: not null> =
/// <summary>Creates an event object suitable for implementing an arbitrary type of delegate.</summary>
/// <returns>The event object.</returns>
///
/// <example-tbd></example-tbd>
new: unit -> DelegateEvent<'Delegate>
/// <summary>Triggers the event using the given parameters.</summary>
/// <param name="args">The parameters for the event.</param>
///
/// <example-tbd></example-tbd>
member Trigger: args: objnull array -> unit
/// <summary>Publishes the event as a first class event value.</summary>
///
/// <example-tbd></example-tbd>
member Publish: IDelegateEvent<'Delegate>
/// <summary>Event implementations for a delegate types following the standard .NET Framework convention of a first 'sender' argument.</summary>
///
/// <category index="3">Events and Observables</category>
[<CompiledName("FSharpEvent`2")>]
type Event<'Delegate, 'Args
when 'Delegate: delegate<'Args, unit> and 'Delegate :> Delegate and 'Delegate: not struct and 'Delegate: not null> =
/// <summary>Creates an event object suitable for delegate types following the standard .NET Framework convention of a first 'sender' argument.</summary>
/// <returns>The created event.</returns>
///
/// <example-tbd></example-tbd>
new: unit -> Event<'Delegate, 'Args>
/// <summary>Triggers the event using the given sender object and parameters. The sender object may be <c>null</c>.</summary>
///
/// <param name="sender">The object triggering the event.</param>
/// <param name="args">The parameters for the event.</param>
///
/// <example-tbd></example-tbd>
member Trigger: sender: objnull * args: 'Args -> unit
/// <summary>Publishes the event as a first class event value.</summary>
///
/// <example-tbd></example-tbd>
member Publish: IEvent<'Delegate, 'Args>
/// <summary>Event implementations for the IEvent<_> type.</summary>
///
/// <category index="3">Events and Observables</category>
[<CompiledName("FSharpEvent`1")>]
type Event<'T> =
/// <summary>Creates an observable object.</summary>
/// <returns>The created event.</returns>
///
/// <example-tbd></example-tbd>
new: unit -> Event<'T>
/// <summary>Triggers the event using the given parameters.</summary>
///
/// <param name="arg">The event parameters.</param>
///
/// <example-tbd></example-tbd>
member Trigger: arg: 'T -> unit
/// <summary>Publishes the event as a first class value.</summary>
///
/// <example-tbd></example-tbd>
member Publish: IEvent<'T>