SDSL  3.0.0
Succinct Data Structure Library
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. More...
 
 byte_alphabet (int_vector_buffer< 8 > &text_buf, int_vector_size_type len)
 Construct from a byte-stream. More...
 
 byte_alphabet (const byte_alphabet &bas)
 
 byte_alphabet (byte_alphabet &&bas)
 
byte_alphabetoperator= (const byte_alphabet &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. More...
 
bool operator!= (byte_alphabet const &other) const noexcept
 Inequality operator. More...
 
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

const char2comp_typechar2comp
 
const comp2char_typecomp2char
 
const C_typeC
 
const sigma_typesigma
 

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 124 of file csa_alphabet_strategy.hpp.

Member Typedef Documentation

◆ alphabet_category

◆ C_type

Definition at line 130 of file csa_alphabet_strategy.hpp.

◆ char2comp_type

◆ char_type

Definition at line 132 of file csa_alphabet_strategy.hpp.

◆ comp2char_type

◆ comp_char_type

Definition at line 133 of file csa_alphabet_strategy.hpp.

◆ sigma_type

Definition at line 131 of file csa_alphabet_strategy.hpp.

◆ size_type

◆ string_type

typedef std::string sdsl::byte_alphabet::string_type

Definition at line 134 of file csa_alphabet_strategy.hpp.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
int_width 

Definition at line 135 of file csa_alphabet_strategy.hpp.

Constructor & Destructor Documentation

◆ byte_alphabet() [1/4]

sdsl::byte_alphabet::byte_alphabet ( )
inline

Default constructor.

Definition at line 154 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 167 of file csa_alphabet_strategy.hpp.

◆ byte_alphabet() [3/4]

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

Definition at line 200 of file csa_alphabet_strategy.hpp.

◆ byte_alphabet() [4/4]

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

Definition at line 211 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 284 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 275 of file csa_alphabet_strategy.hpp.

◆ load()

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

Definition at line 256 of file csa_alphabet_strategy.hpp.

◆ operator!=()

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

Inequality operator.

Definition at line 272 of file csa_alphabet_strategy.hpp.

◆ operator=() [1/2]

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

Definition at line 232 of file csa_alphabet_strategy.hpp.

◆ operator=() [2/2]

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

Definition at line 222 of file csa_alphabet_strategy.hpp.

◆ operator==()

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

Equality operator.

Definition at line 265 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 244 of file csa_alphabet_strategy.hpp.

Member Data Documentation

◆ C

const C_type& sdsl::byte_alphabet::C

Definition at line 144 of file csa_alphabet_strategy.hpp.

◆ char2comp

const char2comp_type& sdsl::byte_alphabet::char2comp

Definition at line 142 of file csa_alphabet_strategy.hpp.

◆ comp2char

const comp2char_type& sdsl::byte_alphabet::comp2char

Definition at line 143 of file csa_alphabet_strategy.hpp.

◆ sigma

const sigma_type& sdsl::byte_alphabet::sigma

Definition at line 145 of file csa_alphabet_strategy.hpp.


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