Concurrently resumes the tasks waiting for this event in awaitable.Await and synchronously invokes any callbacks added to this event by subscribable.Subscribe.
Verse using statement |
using { /Verse.org/Verse } |
Signal<public><native_callable>(Val:)<transacts><no_rollback>:void
Parameters
Signal takes the following parameters:
| Name | Type | Description |
|---|---|---|
Val |
Attributes, Specifiers, and Effects
Specifiers
The following specifiers determine how you can interact with Signal in your programs. For the complete list of specifiers, see the Specifiers Page.
| Specifier | Meaning |
|---|---|
public |
The identifier is universally accessible. You can use this on modules, classes, interfaces, structs, enums, methods, and data. |
native_callable |
Indicates that an instance method is both native (implemented in C++) and may be called by other C++ code. You can see this specifier used on an instance method. This specifier doesn’t propagate to subclasses and so you don’t need to add it to a definition when overriding a method that has this specifier. |
Effects
The following effects determine how Signal behaves in your programs. For the complete list of effects, see the Effect Specifers section of the Specifiers Page.
| Effect | Meaning |
|---|---|
transacts |
This effect indicates that any actions performed by the function can be rolled back. The transacts effect is required any time a mutable variable (var) is written. You’ll be notified when you compile your code if the transacts effect was added to a function that can’t be rolled back. Note that this check is not done for functions with the native specifier. |
no_rollback |
This is the default effect when no exclusive effect is specified. The no_rollback effect indicates that any actions performed by the function cannot be undone and so the function cannot be used in a failure context. This effect cannot be manually specified. |