MongoDB C++ Driver current
Loading...
Searching...
No Matches
Public Member Functions | List of all members
bsoncxx::v_noabi::vector::elements::packed_bit_byte< Iterator > Class Template Reference

#include <bsoncxx/v_noabi/bsoncxx/vector/elements.hpp>

Description

template<typename Iterator>
class bsoncxx::v_noabi::vector::elements::packed_bit_byte< Iterator >

Reference to a byte or partial byte within a vector of packed_bit elements. Allows access to each byte as a uint8_t, while masking off writes to reserved bits.

Template Parameters
IteratorUnderlying byte iterator type, optionally const.

Public Member Functions

constexpr operator std::uint8_t () const noexcept
 Read the entire byte, as a std::uint8_t.
 
packed_bit_byte const & operator%= (std::uint8_t const &other) const noexcept
 Operator %=, emulating number reference behavior.
 
packed_bit_byte const & operator&= (std::uint8_t const &other) const noexcept
 Operator &=, emulating number reference behavior.
 
packed_bit_byte const & operator*= (std::uint8_t const &other) const noexcept
 Operator *=, emulating number reference behavior.
 
packed_bit_byte const & operator+= (std::uint8_t const &other) const noexcept
 Operator +=, emulating number reference behavior.
 
packed_bit_byte const & operator-= (std::uint8_t const &other) const noexcept
 Operator -=, emulating number reference behavior.
 
packed_bit_byte const & operator/= (std::uint8_t const &other) const noexcept
 Operator /=, emulating number reference behavior.
 
packed_bit_byte const & operator<<= (unsigned other) const noexcept
 Operator <<=, emulating number reference behavior.
 
packed_bit_byte const & operator= (packed_bit_byte const &v) const noexcept
 Copy the referenced value from another reference of the same type.
 
packed_bit_byte const & operator= (std::uint8_t const &v) const noexcept
 Overwrite the usable portion of the byte, and set reserved bits to zero.
 
packed_bit_byte const & operator>>= (unsigned other) const noexcept
 Operator >>=, emulating number reference behavior.
 
packed_bit_byte const & operator^= (std::uint8_t const &other) const noexcept
 Operator ^=, emulating number reference behavior.
 
packed_bit_byte const & operator|= (std::uint8_t const &other) const noexcept
 Operator |=, emulating number reference behavior.
 

Member Function Documentation

◆ operator std::uint8_t()

template<typename Iterator >
constexpr bsoncxx::v_noabi::vector::elements::packed_bit_byte< Iterator >::operator std::uint8_t ( ) const
inlineconstexprnoexcept

Read the entire byte, as a std::uint8_t.

◆ operator%=()

template<typename Iterator >
packed_bit_byte const & bsoncxx::v_noabi::vector::elements::packed_bit_byte< Iterator >::operator%= ( std::uint8_t const &  other) const
inlinenoexcept

Operator %=, emulating number reference behavior.

◆ operator&=()

template<typename Iterator >
packed_bit_byte const & bsoncxx::v_noabi::vector::elements::packed_bit_byte< Iterator >::operator&= ( std::uint8_t const &  other) const
inlinenoexcept

Operator &=, emulating number reference behavior.

◆ operator*=()

template<typename Iterator >
packed_bit_byte const & bsoncxx::v_noabi::vector::elements::packed_bit_byte< Iterator >::operator*= ( std::uint8_t const &  other) const
inlinenoexcept

Operator *=, emulating number reference behavior.

◆ operator+=()

template<typename Iterator >
packed_bit_byte const & bsoncxx::v_noabi::vector::elements::packed_bit_byte< Iterator >::operator+= ( std::uint8_t const &  other) const
inlinenoexcept

Operator +=, emulating number reference behavior.

◆ operator-=()

template<typename Iterator >
packed_bit_byte const & bsoncxx::v_noabi::vector::elements::packed_bit_byte< Iterator >::operator-= ( std::uint8_t const &  other) const
inlinenoexcept

Operator -=, emulating number reference behavior.

◆ operator/=()

template<typename Iterator >
packed_bit_byte const & bsoncxx::v_noabi::vector::elements::packed_bit_byte< Iterator >::operator/= ( std::uint8_t const &  other) const
inlinenoexcept

Operator /=, emulating number reference behavior.

◆ operator<<=()

template<typename Iterator >
packed_bit_byte const & bsoncxx::v_noabi::vector::elements::packed_bit_byte< Iterator >::operator<<= ( unsigned  other) const
inlinenoexcept

Operator <<=, emulating number reference behavior.

◆ operator=() [1/2]

template<typename Iterator >
packed_bit_byte const & bsoncxx::v_noabi::vector::elements::packed_bit_byte< Iterator >::operator= ( packed_bit_byte< Iterator > const &  v) const
inlinenoexcept

Copy the referenced value from another reference of the same type.

◆ operator=() [2/2]

template<typename Iterator >
packed_bit_byte const & bsoncxx::v_noabi::vector::elements::packed_bit_byte< Iterator >::operator= ( std::uint8_t const &  v) const
inlinenoexcept

Overwrite the usable portion of the byte, and set reserved bits to zero.

Parameters
vByte to write. Reserved bits are ignored.
Returns
*this

◆ operator>>=()

template<typename Iterator >
packed_bit_byte const & bsoncxx::v_noabi::vector::elements::packed_bit_byte< Iterator >::operator>>= ( unsigned  other) const
inlinenoexcept

Operator >>=, emulating number reference behavior.

◆ operator^=()

template<typename Iterator >
packed_bit_byte const & bsoncxx::v_noabi::vector::elements::packed_bit_byte< Iterator >::operator^= ( std::uint8_t const &  other) const
inlinenoexcept

Operator ^=, emulating number reference behavior.

◆ operator|=()

template<typename Iterator >
packed_bit_byte const & bsoncxx::v_noabi::vector::elements::packed_bit_byte< Iterator >::operator|= ( std::uint8_t const &  other) const
inlinenoexcept

Operator |=, emulating number reference behavior.


The documentation for this class was generated from the following files: