...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
boost::log::formatter_factory
// In header: <boost/log/utility/setup/formatter_parser.hpp> template<typename CharT> struct formatter_factory { // types typedef CharT char_type; // Character type. typedef std::basic_string< char_type > string_type; // String type. typedef basic_formatter< char_type > formatter_type; // The formatter function object. typedef std::map< string_type, string_type > args_map; // public member functions formatter_factory() = default; virtual ~formatter_factory(); virtual formatter_type create_formatter(attribute_name const &, args_map const &) = 0; formatter_factory(formatter_factory const &) = delete; formatter_factory & operator=(formatter_factory const &) = delete; };
Formatter factory base interface.
formatter_factory
public member functionsformatter_factory() = default;
Default constructor
virtual ~formatter_factory();
Virtual destructor
virtual formatter_type create_formatter(attribute_name const & name, args_map const & args) = 0;
The function creates a formatter for the specified attribute.
Parameters: |
|
formatter_factory(formatter_factory const &) = delete;
formatter_factory & operator=(formatter_factory const &) = delete;