OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
AbsFileStream Class Referenceabstract

A stream of input tokens. More...

#include <AbsFileStream.h>

Inheritance diagram for AbsFileStream:
Collaboration diagram for AbsFileStream:

Public Member Functions

 AbsFileStream (const std::string &name)
 Constructor.
virtual ~AbsFileStream ()
virtual bool fillLine ()=0
 Read next input line.
virtual Token readToken ()
 Read single token from file.
void putBack (const Token &token)
 Put token back to stream.
const std::string & getName () const
 Return stream name.
int getLine () const
 Return line number.
int addReference () const
 Increment reference count.
int removeReference () const
 Decrement the reference count.
bool isShared () const
 Test for sharing.

Protected Member Functions

Token readNumber ()
Token readString ()
Token readWord ()
bool skipComments ()

Protected Attributes

std::string line
int curr_char
std::string stream_name
int curr_line
bool put_back_flag
Token put_back

Private Member Functions

 AbsFileStream ()
 AbsFileStream (const AbsFileStream &)
void operator= (const AbsFileStream &)

Private Attributes

int refCount

Detailed Description

A stream of input tokens.

Definition at line 31 of file AbsFileStream.h.

Constructor & Destructor Documentation

◆ AbsFileStream() [1/3]

AbsFileStream::AbsFileStream ( const std::string & name)
explicit

Constructor.

Definition at line 31 of file AbsFileStream.cpp.

References curr_char, line, name, and TokenStream::TokenStream().

Referenced by AbsFileStream(), FileStream::FileStream(), and operator=().

Here is the call graph for this function:

◆ ~AbsFileStream()

AbsFileStream::~AbsFileStream ( )
virtual

Definition at line 38 of file AbsFileStream.cpp.

◆ AbsFileStream() [2/3]

AbsFileStream::AbsFileStream ( )
private

◆ AbsFileStream() [3/3]

AbsFileStream::AbsFileStream ( const AbsFileStream & )
private

References AbsFileStream().

Here is the call graph for this function:

Member Function Documentation

◆ addReference()

int RCObject::addReference ( ) const
inlineinherited

Increment reference count.

Definition at line 83 of file RCObject.h.

References refCount.

Referenced by Pointer< Object >::operator=(), Pointer< Object >::operator=(), and Pointer< Object >::unique().

◆ fillLine()

virtual bool AbsFileStream::fillLine ( )
pure virtual

Read next input line.

Implemented in FileStream.

Referenced by readToken(), and skipComments().

◆ getLine()

int TokenStream::getLine ( ) const
inherited

Return line number.

Definition at line 49 of file TokenStream.cpp.

References curr_line.

◆ getName()

const std::string & TokenStream::getName ( ) const
inherited

Return stream name.

Definition at line 54 of file TokenStream.cpp.

References stream_name.

◆ isShared()

bool RCObject::isShared ( ) const
inlineinherited

Test for sharing.

Definition at line 93 of file RCObject.h.

References refCount.

◆ operator=()

void AbsFileStream::operator= ( const AbsFileStream & )
private

References AbsFileStream().

Here is the call graph for this function:

◆ putBack()

void TokenStream::putBack ( const Token & token)
inherited

Put token back to stream.

Definition at line 38 of file TokenStream.cpp.

References put_back, and put_back_flag.

◆ readNumber()

Token AbsFileStream::readNumber ( )
protected

Definition at line 144 of file AbsFileStream.cpp.

References curr_char, TokenStream::curr_line, Token::IS_ERROR, line, and TokenStream::stream_name.

Referenced by readToken().

◆ readString()

Token AbsFileStream::readString ( )
protected

◆ readToken()

Token AbsFileStream::readToken ( )
virtual

Read single token from file.

Implements TokenStream.

Definition at line 42 of file AbsFileStream.cpp.

References curr_char, TokenStream::curr_line, fillLine(), Token::IS_DELIMITER, Token::IS_EOF, Token::IS_ERROR, line, TokenStream::put_back, TokenStream::put_back_flag, readNumber(), readString(), readToken(), readWord(), skipComments(), and TokenStream::stream_name.

Referenced by readToken().

Here is the call graph for this function:

◆ readWord()

Token AbsFileStream::readWord ( )
protected

Definition at line 260 of file AbsFileStream.cpp.

References curr_char, TokenStream::curr_line, Token::IS_WORD, line, and TokenStream::stream_name.

Referenced by readToken().

◆ removeReference()

int RCObject::removeReference ( ) const
inlineinherited

Decrement the reference count.

Definition at line 88 of file RCObject.h.

References refCount.

◆ skipComments()

bool AbsFileStream::skipComments ( )
protected

Definition at line 278 of file AbsFileStream.cpp.

References curr_char, fillLine(), line, and skipComments().

Referenced by readToken(), and skipComments().

Here is the call graph for this function:

Member Data Documentation

◆ curr_char

int AbsFileStream::curr_char
protected

◆ curr_line

◆ line

std::string AbsFileStream::line
protected

◆ put_back

Token TokenStream::put_back
protectedinherited

◆ put_back_flag

bool TokenStream::put_back_flag
protectedinherited

◆ refCount

int RCObject::refCount
mutableprivateinherited

Definition at line 76 of file RCObject.h.

Referenced by addReference(), isShared(), RCObject(), RCObject(), and removeReference().

◆ stream_name


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