...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::record — Logging record class.
// In header: <boost/log/core/record.hpp> class record { public: // construct/copy/destruct record() noexcept; record(record &&) noexcept; record & operator=(record &&) noexcept; ~record(); // public member functions attribute_value_set & attribute_values() noexcept; attribute_value_set const & attribute_values() const noexcept; explicit operator bool() const noexcept; bool operator!() const noexcept; void swap(record &) noexcept; void reset() noexcept; attribute_value_set::mapped_type operator[](attribute_value_set::key_type) const; template<typename DescriptorT, template< typename > class ActorT> result_of::extract< typename expressions::attribute_keyword< DescriptorT, ActorT >::value_type, DescriptorT >::type operator[](expressions::attribute_keyword< DescriptorT, ActorT > const &) const; record_view lock(); };
The logging record encapsulates all information related to a single logging statement, in particular, attribute values view and the log message string. The record can be updated before pushing for further processing to the logging core.
record
public
construct/copy/destructrecord() noexcept;
Default constructor. Creates an empty record that is equivalent to the invalid record handle.
Postconditions: |
|
record(record && that) noexcept;
Move constructor. Source record contents unspecified after the operation.
record & operator=(record && that) noexcept;
Move assignment. Source record contents unspecified after the operation.
~record();
Destructor. Destroys the record, releases any sinks and attribute values that were involved in processing this record.
record
public member functionsattribute_value_set & attribute_values() noexcept;
Requires: |
|
Returns: |
A reference to the set of attribute values attached to this record |
attribute_value_set const & attribute_values() const noexcept;
Requires: |
|
Returns: |
A reference to the set of attribute values attached to this record |
explicit operator bool() const noexcept;
Conversion to an unspecified boolean type
Returns: |
|
bool operator!() const noexcept;
Inverted conversion to an unspecified boolean type
Returns: |
|
void swap(record & that) noexcept;
Swaps two handles
Parameters: |
|
void reset() noexcept;
Resets the log record handle. If there are no other handles left, the log record is closed and all resources referenced by the record are released.
Postconditions: |
|
attribute_value_set::mapped_type operator[](attribute_value_set::key_type name) const;
Attribute value lookup.
Parameters: |
|
||
Returns: |
An |
template<typename DescriptorT, template< typename > class ActorT> result_of::extract< typename expressions::attribute_keyword< DescriptorT, ActorT >::value_type, DescriptorT >::type operator[](expressions::attribute_keyword< DescriptorT, ActorT > const & keyword) const;
Attribute value lookup.
Parameters: |
|
||
Returns: |
A |
record_view lock();
The function ensures that the log record does not depend on any thread-specific data. Then the record contents are used to construct a
which is returned from the function. The record is no longer valid after the call.record_view
Requires: |
|
Postconditions: |
|
Returns: |
The record view that contains all attribute values from the original record. |