Boost C++ Libraries

PrevUpHomeNext

Class record

boost::log::record — Logging record class.

Synopsis

// In header: <boost/log/core/record.hpp>


class record {
public:
  // construct/copy/destruct
  record();
  record(record &&);
  record& operator=(record &&);
  ~record();

  // public member functions
  attribute_value_set & attribute_values();
  attribute_value_set const & attribute_values() const;
  bool operator!() const;
  void swap(record &);
  void reset();
  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();
};

Description

The logging record incapsulates 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/destruct

  1. record();

    Default constructor. Creates an empty record that is equivalent to the invalid record handle.

    Postconditions:

    !*this == true

  2. record(record && that);

    Move constructor. Source record contents unspecified after the operation.

  3. record& operator=(record && that);

    Move assignment. Source record contents unspecified after the operation.

  4. ~record();

    Destructor. Destroys the record, releases any sinks and attribute values that were involved in processing this record.

record public member functions

  1. attribute_value_set & attribute_values();

    Requires:

    !!*this

    Returns:

    A reference to the set of attribute values attached to this record

  2. attribute_value_set const & attribute_values() const;

    Requires:

    !!*this

    Returns:

    A reference to the set of attribute values attached to this record

  3. bool operator!() const;

    Conversion to an unspecified boolean type

    Inverted conversion to an unspecified boolean type

    Returns:

    true, if the *this identifies a log record, false, if the *this is not valid

    Returns:

    false, if the *this identifies a log record, true, if the *this is not valid

  4. void swap(record & that);

    Swaps two handles

    Parameters:

    that

    Another record to swap with Throws: Nothing

  5. void reset();

    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:

    !*this == true

  6. 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:

    keyword

    Attribute keyword.

    Returns:

    A value_ref with extracted attribute value if it is found, empty value_ref otherwise.

  7. 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 record_view which is returned from the function. The record is no longer valid after the call.

    Requires:

    !!*this

    Postconditions:

    !*this

    Returns:

    The record view that contains all attribute values from the original record.


PrevUpHomeNext