Coverage Report

Created: 2026-01-10 06:47

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/spdlog/include/spdlog/sinks/sink.h
Line
Count
Source
1
// Copyright(c) 2015-present, Gabi Melman & spdlog contributors.
2
// Distributed under the MIT License (http://opensource.org/licenses/MIT)
3
4
#pragma once
5
6
#include <spdlog/details/log_msg.h>
7
#include <spdlog/formatter.h>
8
9
namespace spdlog {
10
11
namespace sinks {
12
class SPDLOG_API sink {
13
public:
14
2
    virtual ~sink() = default;
15
    virtual void log(const details::log_msg &msg) = 0;
16
    virtual void flush() = 0;
17
    virtual void set_pattern(const std::string &pattern) = 0;
18
    virtual void set_formatter(std::unique_ptr<spdlog::formatter> sink_formatter) = 0;
19
20
    void set_level(level::level_enum log_level);
21
    level::level_enum level() const;
22
    bool should_log(level::level_enum msg_level) const;
23
24
protected:
25
    // sink log level - default is all
26
    level_t level_{level::trace};
27
};
28
29
}  // namespace sinks
30
}  // namespace spdlog
31
32
#ifdef SPDLOG_HEADER_ONLY
33
#include "sink-inl.h"
34
#endif