User Guide
logger.cpp
Go to the documentation of this file.
1 /*
2  * Copyright 2023 Blue Brain Project, EPFL.
3  * See the top-level LICENSE file for details.
4  *
5  * SPDX-License-Identifier: Apache-2.0
6  */
7 
8 #include <memory>
9 
10 #include "utils/logger.hpp"
11 
12 /**
13  * \file
14  * \brief \copybrief nmodl::Logger
15  */
16 
17 namespace nmodl {
18 
19 using logger_type = std::shared_ptr<spdlog::logger>;
20 
21 /**
22  * \brief Logger implementation based on spdlog
23  */
24 struct Logger {
26  Logger(const std::string& name, std::string pattern) {
27  logger = spdlog::stdout_color_mt(name);
28  logger->set_pattern(std::move(pattern));
29  }
30 };
31 
32 // NOLINTBEGIN(cppcoreguidelines-avoid-non-const-global-variables)
33 Logger nmodl_logger("NMODL", "[%n] [%^%l%$] :: %v");
35 // NOLINTEND(cppcoreguidelines-avoid-non-const-global-variables)
36 
37 } // namespace nmodl
nmodl::nmodl_logger
Logger nmodl_logger("NMODL", "[%n] [%^%l%$] :: %v")
nmodl::Logger::logger
logger_type logger
Definition: logger.cpp:25
nmodl::logger_type
std::shared_ptr< spdlog::logger > logger_type
Definition: logger.cpp:19
nmodl
encapsulates code generation backend implementations
Definition: ast_common.hpp:26
nmodl::logger
logger_type logger
Definition: logger.cpp:34
nmodl::Logger::Logger
Logger(const std::string &name, std::string pattern)
Definition: logger.cpp:26
nmodl::Logger
Logger implementation based on spdlog.
Definition: logger.cpp:24
logger.hpp
Implement logger based on spdlog library.