OPALX (Object Oriented Parallel Accelerator Library for Exascal) master (dc2a29eed580)
OPALX
Loading...
Searching...
No Matches
FileStream Class Reference

A stream of input tokens. More...

#include <FileStream.h>

Inheritance diagram for FileStream:
Inheritance graph
Collaboration diagram for FileStream:
Collaboration graph

Public Member Functions

 FileStream (const std::string &name)
 Constructor.
 
virtual ~FileStream ()
 Destructor.
 
virtual bool fillLine ()
 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.
 

Static Public Member Functions

static void setEcho (bool flag)
 Set echo flag.
 
static bool getEcho ()
 Return echo flag.
 

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

 FileStream ()
 
 FileStream (const FileStream &)
 
void operator= (const FileStream &)
 

Private Attributes

std::ifstream is
 

Static Private Attributes

static bool echoFlag = false
 

Detailed Description

A stream of input tokens.

Definition at line 31 of file FileStream.h.

Constructor & Destructor Documentation

◆ FileStream() [1/3]

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

Constructor.

Definition at line 33 of file FileStream.cpp.

References is.

◆ ~FileStream()

FileStream::~FileStream ( )
virtual

Destructor.

Definition at line 39 of file FileStream.cpp.

◆ FileStream() [2/3]

FileStream::FileStream ( )
private

◆ FileStream() [3/3]

FileStream::FileStream ( const FileStream )
private

Member Function Documentation

◆ fillLine()

bool FileStream::fillLine ( )
virtual

Read next input line.

Implements AbsFileStream.

Definition at line 45 of file FileStream.cpp.

References AbsFileStream::curr_char, TokenStream::curr_line, echoFlag, is, AbsFileStream::line, and TokenStream::stream_name.

◆ getEcho()

bool FileStream::getEcho ( )
static

Return echo flag.

Definition at line 43 of file FileStream.cpp.

References echoFlag.

◆ getLine()

int TokenStream::getLine ( ) const
inherited

Return line number.

Definition at line 42 of file TokenStream.cpp.

References TokenStream::curr_line.

◆ getName()

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

Return stream name.

Definition at line 44 of file TokenStream.cpp.

References TokenStream::stream_name.

◆ operator=()

void FileStream::operator= ( const FileStream )
private

◆ putBack()

void TokenStream::putBack ( const Token token)
inherited

Put token back to stream.

Definition at line 33 of file TokenStream.cpp.

References TokenStream::put_back, and TokenStream::put_back_flag.

Referenced by IfStatement::IfStatement().

◆ readNumber()

Token AbsFileStream::readNumber ( )
protectedinherited

◆ readString()

Token AbsFileStream::readString ( )
protectedinherited

◆ readToken()

◆ readWord()

Token AbsFileStream::readWord ( )
protectedinherited

◆ setEcho()

void FileStream::setEcho ( bool  flag)
static

Set echo flag.

Definition at line 41 of file FileStream.cpp.

References echoFlag.

Referenced by Option::execute(), main(), and Option::Option().

◆ skipComments()

bool AbsFileStream::skipComments ( )
protectedinherited

Definition at line 266 of file AbsFileStream.cpp.

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

Referenced by AbsFileStream::readToken(), and AbsFileStream::skipComments().

Here is the call graph for this function:

Member Data Documentation

◆ curr_char

int AbsFileStream::curr_char
protectedinherited

◆ curr_line

◆ echoFlag

bool FileStream::echoFlag = false
staticprivate

Definition at line 62 of file FileStream.h.

Referenced by fillLine(), getEcho(), and setEcho().

◆ is

std::ifstream FileStream::is
private

Definition at line 59 of file FileStream.h.

Referenced by FileStream(), and fillLine().

◆ line

std::string AbsFileStream::line
protectedinherited

◆ put_back

Token TokenStream::put_back
protectedinherited

◆ put_back_flag

bool TokenStream::put_back_flag
protectedinherited

◆ stream_name


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