SDSL 3.0.2
Succinct Data Structure Library
Loading...
Searching...
No Matches
sdsl::int_vector_reference< t_int_vector > Class Template Reference

A proxy class that acts as a reference to an integer of length len bits in a int_vector. More...

#include <int_vector.hpp>

Public Types

typedef t_int_vector::value_type value_type
 

Public Member Functions

 int_vector_reference ()=delete
 Default constructor explicitly deleted.
 
constexpr int_vector_reference (int_vector_reference const &) noexcept=default
 Copy and move explicitly defaulted.
 
constexpr int_vector_reference (int_vector_reference &&) noexcept=default
 
 int_vector_reference (value_type *word, uint8_t offset, uint8_t len) noexcept
 Constructor for the reference class.
 
int_vector_referenceoperator= (value_type x) noexcept
 Assignment operator for the proxy class.
 
int_vector_referenceoperator= (int_vector_reference const &x) noexcept
 
int_vector_referenceoperator= (int_vector_reference &&x) noexcept
 
 operator value_type () const noexcept
 Cast the reference to a int_vector<>::value_type.
 
int_vector_referenceoperator++ () noexcept
 Prefix increment of the proxy object.
 
value_type operator++ (int) noexcept
 Postfix increment of the proxy object.
 
int_vector_referenceoperator-- () noexcept
 Prefix decrement of the proxy object.
 
value_type operator-- (int) noexcept
 Postfix decrement of the proxy object.
 
int_vector_referenceoperator+= (const value_type x) noexcept
 Add assign from the proxy object.
 
int_vector_referenceoperator-= (const value_type x) noexcept
 Subtract assign from the proxy object.
 
bool operator== (int_vector_reference const &x) const noexcept
 
bool operator< (int_vector_reference const &x) const noexcept
 

Detailed Description

template<class t_int_vector>
class sdsl::int_vector_reference< t_int_vector >

A proxy class that acts as a reference to an integer of length len bits in a int_vector.

Template Parameters
t_int_vectorThe specific int_vector class.

Definition at line 941 of file int_vector.hpp.

Member Typedef Documentation

◆ value_type

template<class t_int_vector >
typedef t_int_vector::value_type sdsl::int_vector_reference< t_int_vector >::value_type

Definition at line 944 of file int_vector.hpp.

Constructor & Destructor Documentation

◆ int_vector_reference() [1/4]

template<class t_int_vector >
sdsl::int_vector_reference< t_int_vector >::int_vector_reference ( )
delete

Default constructor explicitly deleted.

◆ int_vector_reference() [2/4]

template<class t_int_vector >
constexpr sdsl::int_vector_reference< t_int_vector >::int_vector_reference ( int_vector_reference< t_int_vector > const &  )
constexprdefaultnoexcept

Copy and move explicitly defaulted.

◆ int_vector_reference() [3/4]

template<class t_int_vector >
constexpr sdsl::int_vector_reference< t_int_vector >::int_vector_reference ( int_vector_reference< t_int_vector > &&  )
constexprdefaultnoexcept

◆ int_vector_reference() [4/4]

template<class t_int_vector >
sdsl::int_vector_reference< t_int_vector >::int_vector_reference ( value_type word,
uint8_t  offset,
uint8_t  len 
)
inlinenoexcept

Constructor for the reference class.

Parameters
wordPointer to the corresponding 64bit word in the int_vector.
offsetOffset to the starting bit (offset in [0..63])
lenlength of the integer, should be v->width()!!!

Definition at line 963 of file int_vector.hpp.

Member Function Documentation

◆ operator value_type()

template<class t_int_vector >
sdsl::int_vector_reference< t_int_vector >::operator value_type ( ) const
inlinenoexcept

Cast the reference to a int_vector<>::value_type.

Definition at line 993 of file int_vector.hpp.

◆ operator++() [1/2]

template<class t_int_vector >
int_vector_reference & sdsl::int_vector_reference< t_int_vector >::operator++ ( )
inlinenoexcept

Prefix increment of the proxy object.

Definition at line 999 of file int_vector.hpp.

◆ operator++() [2/2]

template<class t_int_vector >
value_type sdsl::int_vector_reference< t_int_vector >::operator++ ( int  )
inlinenoexcept

Postfix increment of the proxy object.

Definition at line 1007 of file int_vector.hpp.

◆ operator+=()

template<class t_int_vector >
int_vector_reference & sdsl::int_vector_reference< t_int_vector >::operator+= ( const value_type  x)
inlinenoexcept

Add assign from the proxy object.

Definition at line 1031 of file int_vector.hpp.

◆ operator--() [1/2]

template<class t_int_vector >
int_vector_reference & sdsl::int_vector_reference< t_int_vector >::operator-- ( )
inlinenoexcept

Prefix decrement of the proxy object.

Definition at line 1015 of file int_vector.hpp.

◆ operator--() [2/2]

template<class t_int_vector >
value_type sdsl::int_vector_reference< t_int_vector >::operator-- ( int  )
inlinenoexcept

Postfix decrement of the proxy object.

Definition at line 1023 of file int_vector.hpp.

◆ operator-=()

template<class t_int_vector >
int_vector_reference & sdsl::int_vector_reference< t_int_vector >::operator-= ( const value_type  x)
inlinenoexcept

Subtract assign from the proxy object.

Definition at line 1039 of file int_vector.hpp.

◆ operator<()

template<class t_int_vector >
bool sdsl::int_vector_reference< t_int_vector >::operator< ( int_vector_reference< t_int_vector > const &  x) const
inlinenoexcept

Definition at line 1051 of file int_vector.hpp.

◆ operator=() [1/3]

template<class t_int_vector >
int_vector_reference & sdsl::int_vector_reference< t_int_vector >::operator= ( int_vector_reference< t_int_vector > &&  x)
inlinenoexcept

Definition at line 987 of file int_vector.hpp.

◆ operator=() [2/3]

template<class t_int_vector >
int_vector_reference & sdsl::int_vector_reference< t_int_vector >::operator= ( int_vector_reference< t_int_vector > const &  x)
inlinenoexcept

Definition at line 982 of file int_vector.hpp.

◆ operator=() [3/3]

template<class t_int_vector >
int_vector_reference & sdsl::int_vector_reference< t_int_vector >::operator= ( value_type  x)
inlinenoexcept

Assignment operator for the proxy class.

The integer x is assign to the referenced position in the t_int_vector with the specified width of the int_vector

Parameters
x64bit integer to assign
Returns
A const_reference to the assigned reference

Definition at line 976 of file int_vector.hpp.

◆ operator==()

template<class t_int_vector >
bool sdsl::int_vector_reference< t_int_vector >::operator== ( int_vector_reference< t_int_vector > const &  x) const
inlinenoexcept

Definition at line 1046 of file int_vector.hpp.


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