Wire Sysio Wire Sysion 1.0.0
|
#include <method.hpp>
Classes | |
class | handle |
Public Member Functions | |
template<typename T > | |
handle | register_provider (T provider, int priority=0) |
Protected Member Functions | |
method ()=default | |
virtual | ~method ()=default |
Static Protected Member Functions | |
static void | deleter (void *erased_method_ptr) |
static method * | get_method (erased_method_ptr &ptr) |
static erased_method_ptr | make_unique () |
Friends | |
class | appbase::application |
A method is a loosely linked application level function. Callers can grab a method and call it Providers can grab a method and register themselves
This removes the need to tightly couple different plugins in the application.
FunctionSig | - the signature of the method (eg void(int, int)) |
DispatchPolicy | - the policy for dispatching this method |
Definition at line 197 of file method.hpp.
|
protecteddefault |
|
protectedvirtualdefault |
|
inlinestaticprotected |
Proper deleter for type-erased method note: no type checking is performed at this level
erased_method_ptr |
Definition at line 267 of file method.hpp.
|
inlinestaticprotected |
get the method* back from an erased pointer
ptr | - the type-erased method pointer |
Definition at line 278 of file method.hpp.
|
inlinestaticprotected |
Construct a unique_ptr for the type erased method poiner
Definition at line 286 of file method.hpp.
|
inline |
Register a provider of this method
T | - the type of the provider (functor, lambda) |
provider | - the provider |
priority | - the priority of this provider, lower is called before higher |
Definition at line 253 of file method.hpp.
|
friend |
Definition at line 290 of file method.hpp.