mCRL2
Loading...
Searching...
No Matches
atermpp::binary_aterm_istream Class Referencefinal

Reads terms from a stream in the steamable binary aterm format. More...

#include <aterm_io_binary.h>

Inheritance diagram for atermpp::binary_aterm_istream:
atermpp::aterm_istream atermpp::aterm_stream

Public Member Functions

 binary_aterm_istream (std::istream &is)
 Provide the input stream from which terms are read.
 
 binary_aterm_istream (std::shared_ptr< mcrl2::utilities::ibitstream > stream)
 
void get (aterm &t) override
 Reads an aterm from this stream.
 
- Public Member Functions inherited from atermpp::aterm_istream
virtual ~aterm_istream ()
 
virtual void get (aterm &t)=0
 Reads an aterm from this stream.
 
- Public Member Functions inherited from atermpp::aterm_stream
virtual ~aterm_stream ()
 
void set_transformer (aterm_transformer transformer)
 Sets the given transformer to be applied to following writes.
 
aterm_transformerget_transformer () const
 

Private Member Functions

unsigned int term_index_width ()
 
unsigned int function_symbol_index_width ()
 

Private Attributes

std::shared_ptr< mcrl2::utilities::ibitstreamm_stream
 
unsigned int m_term_index_width
 caches the result of term_index_width().
 
unsigned int m_function_symbol_index_width
 caches the result of function_symbol_index_width().
 
atermpp::deque< atermm_terms
 An index of read terms.
 
std::deque< function_symbolm_function_symbols
 An index of read function symbols.
 

Additional Inherited Members

- Protected Attributes inherited from atermpp::aterm_stream
aterm_transformerm_transformer = identity
 

Detailed Description

Reads terms from a stream in the steamable binary aterm format.

Definition at line 67 of file aterm_io_binary.h.

Constructor & Destructor Documentation

◆ binary_aterm_istream() [1/2]

atermpp::binary_aterm_istream::binary_aterm_istream ( std::istream &  is)

Provide the input stream from which terms are read.

Definition at line 213 of file aterm_io_binary.cpp.

◆ binary_aterm_istream() [2/2]

atermpp::binary_aterm_istream::binary_aterm_istream ( std::shared_ptr< mcrl2::utilities::ibitstream stream)

Definition at line 192 of file aterm_io_binary.cpp.

Member Function Documentation

◆ function_symbol_index_width()

unsigned int atermpp::binary_aterm_istream::function_symbol_index_width ( )
private
Returns
The number of bits needed to index function symbols.

Definition at line 315 of file aterm_io_binary.cpp.

◆ get()

void atermpp::binary_aterm_istream::get ( aterm t)
overridevirtual

Reads an aterm from this stream.

Implements atermpp::aterm_istream.

Definition at line 239 of file aterm_io_binary.cpp.

◆ term_index_width()

unsigned int atermpp::binary_aterm_istream::term_index_width ( )
private
Returns
The number of bits needed to index terms.

Definition at line 309 of file aterm_io_binary.cpp.

Member Data Documentation

◆ m_function_symbol_index_width

unsigned int atermpp::binary_aterm_istream::m_function_symbol_index_width
private

caches the result of function_symbol_index_width().

Definition at line 86 of file aterm_io_binary.h.

◆ m_function_symbols

std::deque<function_symbol> atermpp::binary_aterm_istream::m_function_symbols
private

An index of read function symbols.

Definition at line 89 of file aterm_io_binary.h.

◆ m_stream

std::shared_ptr<mcrl2::utilities::ibitstream> atermpp::binary_aterm_istream::m_stream
private

Definition at line 83 of file aterm_io_binary.h.

◆ m_term_index_width

unsigned int atermpp::binary_aterm_istream::m_term_index_width
private

caches the result of term_index_width().

Definition at line 85 of file aterm_io_binary.h.

◆ m_terms

atermpp::deque<aterm> atermpp::binary_aterm_istream::m_terms
private

An index of read terms.

Definition at line 88 of file aterm_io_binary.h.


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