tsl-devkit/lsp-server/src/bridge/spdlog.cppm

65 lines
1.5 KiB
C++

module;
// Global module fragment: pull in third-party headers
#include <spdlog/spdlog.h>
#include <spdlog/sinks/stdout_color_sinks.h>
#include <spdlog/sinks/stdout_sinks.h>
#include <spdlog/sinks/basic_file_sink.h>
export module spdlog;
// Re-export spdlog namespace
export namespace spdlog
{
using namespace ::spdlog;
// Explicitly export commonly used items for better documentation
// Logger management
using ::spdlog::get;
using ::spdlog::create;
using ::spdlog::drop;
using ::spdlog::drop_all;
using ::spdlog::set_default_logger;
using ::spdlog::default_logger;
using ::spdlog::shutdown;
// Logging functions
using ::spdlog::trace;
using ::spdlog::debug;
using ::spdlog::info;
using ::spdlog::warn;
using ::spdlog::error;
using ::spdlog::critical;
// Configuration
using ::spdlog::set_level;
using ::spdlog::get_level;
using ::spdlog::set_pattern;
using ::spdlog::flush_on;
using ::spdlog::flush_every;
// Factories
using ::spdlog::basic_logger_mt;
using ::spdlog::stdout_logger_mt;
using ::spdlog::stderr_logger_mt;
// Types
using logger = ::spdlog::logger;
using ::spdlog::sink_ptr;
// Level enum
namespace level
{
using ::spdlog::level::level_enum;
}
// Common sinks
namespace sinks
{
using ::spdlog::sinks::stdout_color_sink_mt;
using ::spdlog::sinks::stderr_color_sink_mt;
using ::spdlog::sinks::basic_file_sink_mt;
}
}