28 #ifndef LIBRPC_SERVER_H 29 #define LIBRPC_SERVER_H 55 typedef enum rpc_server_event
57 RPC_SERVER_CLIENT_CONNECT,
58 RPC_SERVER_CLIENT_DISCONNECT,
65 rpc_server_event_t event);
70 #define RPC_SERVER_HANDLER(_fn, _arg) \ 71 ^(rpc_connection_t _conn, rpc_server_event_t _event) { \ 72 _fn(_arg, _conn, _event); \ 134 const char *_Nullable path,
const char *_Nullable interface,
135 const char *_Nonnull name, _Nullable
rpc_object_t args);
162 _Nonnull rpc_server_t *_Nonnull *_Nonnull servers,
void rpc_server_set_event_handler(_Nonnull rpc_server_t server, _Nullable rpc_server_ev_handler_t handler)
struct rpc_object * rpc_object_t
void rpc_server_broadcast_event(_Nonnull rpc_server_t server, const char *_Nullable path, const char *_Nullable interface, const char *_Nonnull name, _Nullable rpc_object_t args)
_Nullable rpc_server_t rpc_server_create_ex(const char *_Nonnull uri, _Nonnull rpc_context_t context, _Nullable rpc_object_t params)
struct rpc_connection * rpc_connection_t
struct rpc_server * rpc_server_t
void rpc_server_resume(_Nonnull rpc_server_t server)
struct rpc_context * rpc_context_t
int rpc_server_close(_Nonnull rpc_server_t server)
_Nullable rpc_server_t rpc_server_find(const char *_Nonnull uri, _Nonnull rpc_context_t context)
_Nullable rpc_server_t rpc_server_create(const char *_Nonnull uri, _Nonnull rpc_context_t context)
void(^ rpc_server_ev_handler_t)(_Nonnull rpc_connection_t conn, rpc_server_event_t event)
void rpc_server_pause(_Nonnull rpc_server_t server)
int rpc_server_socket_activate(_Nonnull rpc_context_t context, _Nonnull rpc_server_t *_Nonnull *_Nonnull servers, _Nullable rpc_object_t *_Nullable rest)