30 template<
typename Mutex>
    35         : base_filename_(
std::move(base_filename))
    37         , max_files_(max_files)
    40         current_size_ = file_helper_.
size(); 
    66         current_size_ += formatted.size();
    67         if (current_size_ > max_size_)
    70             current_size_ = formatted.size();
    72         file_helper_.
write(formatted);
    90         for (
auto i = max_files_; i > 0; --i)
    99             if (!rename_file(src, target))
   105                 if (!rename_file(src, target))
   107                     file_helper_.
reopen(
true); 
   114         file_helper_.
reopen(
true);
   127     std::size_t max_size_;
   128     std::size_t max_files_;
   129     std::size_t current_size_;
   142 template<
typename Factory = default_factory>
   144     const std::string &logger_name, 
const filename_t &filename, 
size_t max_file_size, 
size_t max_files)
   146     return Factory::template create<sinks::rotating_file_sink_mt>(logger_name, filename, max_file_size, max_files);
   149 template<
typename Factory = default_factory>
   151     const std::string &logger_name, 
const filename_t &filename, 
size_t max_file_size, 
size_t max_files)
   153     return Factory::template create<sinks::rotating_file_sink_st>(logger_name, filename, max_file_size, max_files);
 
std::shared_ptr< logger > rotating_logger_mt(const std::string &logger_name, const filename_t &filename, size_t max_file_size, size_t max_files)
 
void open(const filename_t &fname, bool truncate=false)
 
std::unique_ptr< spdlog::formatter > formatter_
 
static filename_t calc_filename(const filename_t &filename, std::size_t index)
 
void sink_it_(const details::log_msg &msg) override
 
If we are still before C++14, supply the fodder for doing the "indices trick". 
 
void reopen(bool truncate)
 
static std::tuple< filename_t, filename_t > split_by_extension(const spdlog::filename_t &fname)
 
int rename(const filename_t &filename1, const filename_t &filename2) SPDLOG_NOEXCEPT
 
void write(const fmt::memory_buffer &buf)
 
int remove(const filename_t &filename) SPDLOG_NOEXCEPT
 
std::enable_if< is_contiguous< Container >::value &&internal::is_string< S >::value, std::back_insert_iterator< Container > >::type format_to(std::back_insert_iterator< Container > out, const S &format_str, const Args &... args)
 
std::shared_ptr< logger > rotating_logger_st(const std::string &logger_name, const filename_t &filename, size_t max_file_size, size_t max_files)
 
static bool file_exists(const filename_t &fname)
 
#define SPDLOG_FILENAME_T(s)
 
void sleep_for_millis(int milliseconds) SPDLOG_NOEXCEPT
 
std::string filename_to_str(const filename_t &filename)
 
rotating_file_sink(filename_t base_filename, std::size_t max_size, std::size_t max_files)