#pragma once
#include <stdarg.h>
#include <stdlib.h>
#include <inttypes.h>
#define CLOG_NONE …
#define CLOG_FATAL …
#define CLOG_ERROR …
#define CLOG_WARNING …
#define CLOG_INFO …
#define CLOG_DEBUG …
#ifndef CLOG_VISIBILITY
#if defined(__ELF__)
#define CLOG_VISIBILITY …
#elif defined(__MACH__)
#define CLOG_VISIBILITY …
#else
#define CLOG_VISIBILITY
#endif
#endif
#ifndef CLOG_ARGUMENTS_FORMAT
#if defined(__GNUC__)
#define CLOG_ARGUMENTS_FORMAT …
#else
#define CLOG_ARGUMENTS_FORMAT
#endif
#endif
#ifdef __cplusplus
extern "C" {
#endif
CLOG_VISIBILITY void clog_vlog_debug(const char* module, const char* format, va_list args);
CLOG_VISIBILITY void clog_vlog_info(const char* module, const char* format, va_list args);
CLOG_VISIBILITY void clog_vlog_warning(const char* module, const char* format, va_list args);
CLOG_VISIBILITY void clog_vlog_error(const char* module, const char* format, va_list args);
CLOG_VISIBILITY void clog_vlog_fatal(const char* module, const char* format, va_list args);
#define CLOG_DEFINE_LOG_DEBUG(log_debug_function_name, module, level) …
#define CLOG_DEFINE_LOG_INFO(log_info_function_name, module, level) …
#define CLOG_DEFINE_LOG_WARNING(log_warning_function_name, module, level) …
#define CLOG_DEFINE_LOG_ERROR(log_error_function_name, module, level) …
#define CLOG_DEFINE_LOG_FATAL(log_fatal_function_name, module, level) …
#ifdef __cplusplus
}
#endif