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

Abstract interface for a stream of input tokens. More...

#include <TokenStream.h>

Inheritance diagram for TokenStream:
Collaboration diagram for TokenStream:

Public Member Functions

 TokenStream (const std::string &name)
 Constructor.
virtual ~TokenStream ()
void putBack (const Token &token)
 Put token back to stream.
virtual Token readToken ()=0
 Read single token from 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 Attributes

std::string stream_name
int curr_line
bool put_back_flag
Token put_back

Private Member Functions

 TokenStream ()
 TokenStream (const TokenStream &)
void operator= (const TokenStream &)

Private Attributes

int refCount

Detailed Description

Abstract interface for a stream of input tokens.

Definition at line 33 of file TokenStream.h.

Constructor & Destructor Documentation

◆ TokenStream() [1/3]

TokenStream::TokenStream ( const std::string & name)

◆ ~TokenStream()

TokenStream::~TokenStream ( )
virtual

Definition at line 34 of file TokenStream.cpp.

◆ TokenStream() [2/3]

TokenStream::TokenStream ( )
private

◆ TokenStream() [3/3]

TokenStream::TokenStream ( const TokenStream & )
private

References TokenStream().

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().

◆ getLine()

int TokenStream::getLine ( ) const

Return line number.

Definition at line 49 of file TokenStream.cpp.

References curr_line.

◆ getName()

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

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 TokenStream::operator= ( const TokenStream & )
private

References TokenStream().

Here is the call graph for this function:

◆ putBack()

void TokenStream::putBack ( const Token & token)

Put token back to stream.

Definition at line 38 of file TokenStream.cpp.

References put_back, and put_back_flag.

◆ readToken()

virtual Token TokenStream::readToken ( )
pure virtual

◆ removeReference()

int RCObject::removeReference ( ) const
inlineinherited

Decrement the reference count.

Definition at line 88 of file RCObject.h.

References refCount.

Member Data Documentation

◆ curr_line

◆ put_back

Token TokenStream::put_back
protected

◆ put_back_flag

bool TokenStream::put_back_flag
protected

◆ 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: