LexLeo 0.0.0-dev+f8e5087-dirty
Technical documentation
Loading...
Searching...
No Matches
logger_adapters_api.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: GPL-3.0-or-later
2 * Copyright (C) 2026 Sylvain Labopin
3 */
4
25#ifndef LEXLEO_LOGGER_ADAPTERS_API_H
26#define LEXLEO_LOGGER_ADAPTERS_API_H
27
30
31#ifdef __cplusplus
32extern "C" {
33#endif
34
45typedef struct logger_vtbl_t {
47 logger_status_t (*log)(void *backend, const char *message);
48
50 void (*destroy)(void *backend);
52
95 logger_t **out,
96 const logger_vtbl_t *vtbl,
97 void *backend,
98 const logger_env_t *env );
99
100#ifdef __cplusplus
101}
102#endif
103
104#endif //LEXLEO_LOGGER_ADAPTERS_API_H
logger_status_t logger_create(logger_t **out, const logger_vtbl_t *vtbl, void *backend, const logger_env_t *env)
Create a generic logger handle from adapter-provided backend bindings.
Definition logger.c:27
Public environment type for the logger port.
logger_status_t
Runtime environment for the logger port.
Definition logger_env.h:34
Private handle structure for a logger_t.
Adapter dispatch table bound to a logger_t instance.
logger_status_t(* log)(void *backend, const char *message)
void(* destroy)(void *backend)