Execute all enabled callbacks for the signal. Rather than allowing for custom combiners, the behavior of any_of is hard‐coded here.
Synopsis
Declared in <util/btcsignals.h>
template<typename... Args>
[[nodiscard, requires_capability(0x7f2e358a2f98), requires_capability(0x7f2e3039c748), requires_capability(0x7f2e2b9df638), requires_capability(0x7f2e41adc838), requires_capability(0x7f2e32120598), requires_capability(0x7f2e41e5ac28), requires_capability(0x7f2e27b0c288), requires_capability(0x7f2e411bb678)]]
result_type
operator()(Args&&... args) const;
Description
Callbacks which return void require special handling.
In order to avoid locking during the callbacks, the list of callbacks is cached before they are called. This allows a callback to call connect(), but the newly connected callback will not be run during the current signal invocation.
Note that the parameters are accepted as universal references, though they are not perfectly forwarded as that could cause a use‐after‐move if more than one callback is enabled.
Return Value
void for the null_value combiner, or true if any callback returned true for the any_of combiner.
|
Note
|
The return value should not be discarded. |
Template Parameters
Name |
Description |
Args |
The argument types forwarded to each connected callback. |
Parameters
Name |
Description |
args |
The arguments passed to each enabled callback. |
Created with MrDocs