cloudy  trunk
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Typedefs | Functions
parser.cpp File Reference
#include "cddefines.h"
#include "parser.h"
#include "called.h"
#include "flux.h"
#include "input.h"
#include "elementnames.h"
#include "service.h"
#include "depth_table.h"
#include "lines.h"
#include <deque>
Include dependency graph for parser.cpp:

Go to the source code of this file.

Typedefs

typedef std::map< string, double > symtab
 

Functions

STATIC bool ParseExpr (deque< Token > &chTokens, vector< double > &valstack, const symtab &tab)
 
const char * nWord (const char *chKey, const char *chCard)
 
bool isBoundaryChar (char c)
 
STATIC bool ParseNumber (deque< Token > &chTokens, vector< double > &valstack, const symtab &tab)
 
STATIC bool doop (vector< double > &valstack, const string &op)
 
STATIC bool ParseExp (deque< Token > &chTokens, vector< double > &valstack, const symtab &tab)
 
STATIC bool ParseProduct (deque< Token > &chTokens, vector< double > &valstack, const symtab &tab)
 
Symbol maybeNumber (bool numOK, const Symbol &s)
 

Typedef Documentation

typedef std::map<string,double> symtab

Definition at line 28 of file parser.cpp.

Function Documentation

STATIC bool doop ( vector< double > &  valstack,
const string &  op 
)

Definition at line 648 of file parser.cpp.

References DEBUG_ENTRY, fprintf(), and ioQQQ.

Referenced by ParseExp(), and ParseProduct().

Here is the call graph for this function:

bool isBoundaryChar ( char  c)

Definition at line 130 of file parser.cpp.

Referenced by Parser::nMatch1(), and nWord().

Symbol maybeNumber ( bool  numOK,
const Symbol s 
)
inline

Definition at line 809 of file parser.cpp.

References DEBUG_ENTRY, Symbol::ERROR, fprintf(), ioQQQ, and Symbol::value.

Referenced by Parser::getSymbol().

Here is the call graph for this function:

const char* nWord ( const char *  chKey,
const char *  chCard 
)

nWord determine whether match to a keyword occurs on command line, return value is 0 if no match, and position of match within string if hit

Parameters
*chKey
*chCard

Definition at line 62 of file parser.cpp.

References ASSERT, DEBUG_ENTRY, and isBoundaryChar().

Referenced by Parser::nWord().

Here is the call graph for this function:

STATIC bool ParseExp ( deque< Token > &  chTokens,
vector< double > &  valstack,
const symtab tab 
)

Definition at line 677 of file parser.cpp.

References DEBUG_ENTRY, doop(), and ParseNumber().

Referenced by ParseProduct().

Here is the call graph for this function:

STATIC bool ParseExpr ( deque< Token > &  chTokens,
vector< double > &  valstack,
const symtab tab 
)

Definition at line 737 of file parser.cpp.

References DEBUG_ENTRY, and ParseProduct().

Referenced by Parser::FFmtRead().

Here is the call graph for this function:

STATIC bool ParseNumber ( deque< Token > &  chTokens,
vector< double > &  valstack,
const symtab tab 
)

Definition at line 618 of file parser.cpp.

References cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, fprintf(), and ioQQQ.

Referenced by ParseExp().

Here is the call graph for this function:

STATIC bool ParseProduct ( deque< Token > &  chTokens,
vector< double > &  valstack,
const symtab tab 
)

Definition at line 713 of file parser.cpp.

References DEBUG_ENTRY, doop(), and ParseExp().

Referenced by ParseExpr().

Here is the call graph for this function: