...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::filter_factory
// In header: <boost/log/utility/setup/filter_parser.hpp> template<typename CharT> struct filter_factory { // types typedef CharT char_type; // Character type. typedef std::basic_string< char_type > string_type; // String type. // construct/copy/destruct filter_factory(filter_factory const &) = delete; filter_factory & operator=(filter_factory const &) = delete; ~filter_factory(); // public member functions virtual filter on_exists_test(attribute_name const &); virtual filter on_equality_relation(attribute_name const &, string_type const &); virtual filter on_inequality_relation(attribute_name const &, string_type const &); virtual filter on_less_relation(attribute_name const &, string_type const &); virtual filter on_greater_relation(attribute_name const &, string_type const &); virtual filter on_less_or_equal_relation(attribute_name const &, string_type const &); virtual filter on_greater_or_equal_relation(attribute_name const &, string_type const &); virtual filter on_custom_relation(attribute_name const &, string_type const &, string_type const &); };
The interface class for all filter factories.
filter_factory
public
construct/copy/destructfilter_factory(filter_factory const &) = delete;
filter_factory & operator=(filter_factory const &) = delete;
~filter_factory();
Default constructor
Virtual destructor
filter_factory
public member functionsvirtual filter on_exists_test(attribute_name const & name);
The callback for filter for the attribute existence test
virtual filter on_equality_relation(attribute_name const & name, string_type const & arg);
The callback for equality relation filter
virtual filter on_inequality_relation(attribute_name const & name, string_type const & arg);
The callback for inequality relation filter
virtual filter on_less_relation(attribute_name const & name, string_type const & arg);
The callback for less relation filter
virtual filter on_greater_relation(attribute_name const & name, string_type const & arg);
The callback for greater relation filter
virtual filter on_less_or_equal_relation(attribute_name const & name, string_type const & arg);
The callback for less or equal relation filter
virtual filter on_greater_or_equal_relation(attribute_name const & name, string_type const & arg);
The callback for greater or equal relation filter
virtual filter on_custom_relation(attribute_name const & name, string_type const & rel, string_type const & arg);
The callback for custom relation filter