SDSL 3.0.3
Succinct Data Structure Library
Loading...
Searching...
No Matches
sdsl::byte_alphabet Class Reference

A simple space greedy representation for byte alphabets. More...

#include <csa_alphabet_strategy.hpp>

Public Types

enum  { int_width = 8 }
 
typedef int_vector ::size_type size_type
 
typedef int_vector< 8 > char2comp_type
 
typedef int_vector< 8 > comp2char_type
 
typedef int_vector< 64 > C_type
 
typedef uint16_t sigma_type
 
typedef uint8_t char_type
 
typedef uint8_t comp_char_type
 
typedef std::string string_type
 
typedef byte_alphabet_tag alphabet_category
 

Public Member Functions

 byte_alphabet ()
 Default constructor.
 
 byte_alphabet (int_vector_buffer< 8 > &text_buf, int_vector_size_type len)
 Construct from a byte-stream.
 
 byte_alphabet (byte_alphabet const &bas)
 
 byte_alphabet (byte_alphabet &&bas)
 
byte_alphabetoperator= (byte_alphabet const &bas)
 
byte_alphabetoperator= (byte_alphabet &&bas)
 
size_type serialize (std::ostream &out, structure_tree_node *v, std::string name="") const
 
void load (std::istream &in)
 
bool operator== (byte_alphabet const &other) const noexcept
 Equality operator.
 
bool operator!= (byte_alphabet const &other) const noexcept
 Inequality operator.
 
template<typename archive_t >
void CEREAL_SAVE_FUNCTION_NAME (archive_t &ar) const
 
template<typename archive_t >
void CEREAL_LOAD_FUNCTION_NAME (archive_t &ar)
 

Public Attributes

char2comp_type const & char2comp
 
comp2char_type const & comp2char
 
C_type const & C
 
sigma_type const & sigma
 

Detailed Description

A simple space greedy representation for byte alphabets.

Space consumption:
At least: 2.5 kB Details: char2comp + comp2char take 2*256 + 2*8 bytes m_C takes 257*8 bytes m_sigma takes 2 bytes

Definition at line 136 of file csa_alphabet_strategy.hpp.

Member Typedef Documentation

◆ alphabet_category

◆ C_type

◆ char2comp_type

◆ char_type

Definition at line 144 of file csa_alphabet_strategy.hpp.

◆ comp2char_type

◆ comp_char_type

◆ sigma_type

Definition at line 143 of file csa_alphabet_strategy.hpp.

◆ size_type

◆ string_type

Definition at line 146 of file csa_alphabet_strategy.hpp.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
int_width 

Definition at line 147 of file csa_alphabet_strategy.hpp.

Constructor & Destructor Documentation

◆ byte_alphabet() [1/4]

sdsl::byte_alphabet::byte_alphabet ( )
inline

Default constructor.

Definition at line 167 of file csa_alphabet_strategy.hpp.

◆ byte_alphabet() [2/4]

sdsl::byte_alphabet::byte_alphabet ( int_vector_buffer< 8 > & text_buf,
int_vector_size_type len )
inline

Construct from a byte-stream.

Parameters
text_bufByte stream.
lenLength of the byte stream.

Definition at line 175 of file csa_alphabet_strategy.hpp.

◆ byte_alphabet() [3/4]

sdsl::byte_alphabet::byte_alphabet ( byte_alphabet const & bas)
inline

Definition at line 214 of file csa_alphabet_strategy.hpp.

◆ byte_alphabet() [4/4]

sdsl::byte_alphabet::byte_alphabet ( byte_alphabet && bas)
inline

Definition at line 225 of file csa_alphabet_strategy.hpp.

Member Function Documentation

◆ CEREAL_LOAD_FUNCTION_NAME()

template<typename archive_t >
void sdsl::byte_alphabet::CEREAL_LOAD_FUNCTION_NAME ( archive_t & ar)
inline

Definition at line 301 of file csa_alphabet_strategy.hpp.

◆ CEREAL_SAVE_FUNCTION_NAME()

template<typename archive_t >
void sdsl::byte_alphabet::CEREAL_SAVE_FUNCTION_NAME ( archive_t & ar) const
inline

Definition at line 292 of file csa_alphabet_strategy.hpp.

◆ load()

void sdsl::byte_alphabet::load ( std::istream & in)
inline

Definition at line 270 of file csa_alphabet_strategy.hpp.

◆ operator!=()

bool sdsl::byte_alphabet::operator!= ( byte_alphabet const & other) const
inlinenoexcept

Inequality operator.

Definition at line 286 of file csa_alphabet_strategy.hpp.

◆ operator=() [1/2]

byte_alphabet & sdsl::byte_alphabet::operator= ( byte_alphabet && bas)
inline

Definition at line 246 of file csa_alphabet_strategy.hpp.

◆ operator=() [2/2]

byte_alphabet & sdsl::byte_alphabet::operator= ( byte_alphabet const & bas)
inline

Definition at line 236 of file csa_alphabet_strategy.hpp.

◆ operator==()

bool sdsl::byte_alphabet::operator== ( byte_alphabet const & other) const
inlinenoexcept

Equality operator.

Definition at line 279 of file csa_alphabet_strategy.hpp.

◆ serialize()

size_type sdsl::byte_alphabet::serialize ( std::ostream & out,
structure_tree_node * v,
std::string name = "" ) const
inline

Definition at line 258 of file csa_alphabet_strategy.hpp.

Member Data Documentation

◆ C

C_type const& sdsl::byte_alphabet::C

Definition at line 156 of file csa_alphabet_strategy.hpp.

◆ char2comp

char2comp_type const& sdsl::byte_alphabet::char2comp

Definition at line 154 of file csa_alphabet_strategy.hpp.

◆ comp2char

comp2char_type const& sdsl::byte_alphabet::comp2char

Definition at line 155 of file csa_alphabet_strategy.hpp.

◆ sigma

sigma_type const& sdsl::byte_alphabet::sigma

Definition at line 157 of file csa_alphabet_strategy.hpp.


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