OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
Namespaces | Typedefs | Functions | Variables
Expressions.cpp File Reference
#include "Algorithms/PartBunchBase.h"
#include "AbstractObjects/Expressions.h"
#include "AbstractObjects/Attribute.h"
#include "AbstractObjects/PlaceRep.h"
#include "AbstractObjects/RangeRep.h"
#include "AbstractObjects/Table.h"
#include "AbstractObjects/TableRowRep.h"
#include "AbstractObjects/OpalData.h"
#include "Expressions/ABinary.h"
#include "Expressions/AColumn.h"
#include "Expressions/AList.h"
#include "Expressions/ARefExpr.h"
#include "Expressions/ARow.h"
#include "Expressions/ASUnary.h"
#include "Expressions/AUnary.h"
#include "Expressions/ATable.h"
#include "Expressions/Indexer.h"
#include "Expressions/SBinary.h"
#include "Expressions/SCell.h"
#include "Expressions/SConstant.h"
#include "Expressions/SFunction.h"
#include "Expressions/SHash.h"
#include "Expressions/SNull.h"
#include "Expressions/SRefAttr.h"
#include "Expressions/SRefExpr.h"
#include "Expressions/SUnary.h"
#include "Expressions/TFind.h"
#include "Expressions/TFunction0.h"
#include "Expressions/TFunction1.h"
#include "Expressions/TFunction2.h"
#include "Parser/Statement.h"
#include "Utilities/OpalException.h"
#include "Utilities/Options.h"
#include "Utilities/ParseError.h"
#include "Utilities/CLRangeError.h"
#include "Utilities/Round.h"
#include "Utilities/Truncate.h"
#include "ValueDefinitions/BoolConstant.h"
#include <algorithm>
#include <cassert>
#include <cerrno>
#include <cmath>
#include <list>
#include <sstream>
#include <vector>
Include dependency graph for Expressions.cpp:

Go to the source code of this file.

Namespaces

 Expressions
 Representation objects and parsers for attribute expressions.
 

Typedefs

typedef TFunction1< double,
const std::vector< double > & > 
Expressions::ArrayFun
 

Functions

bool Expressions::Or (bool a, bool b)
 
bool Expressions::And (bool a, bool b)
 
bool Expressions::Le (double a, double b)
 
bool Expressions::Lt (double a, double b)
 
bool Expressions::Ge (double a, double b)
 
bool Expressions::Gt (double a, double b)
 
bool Expressions::Eq (double a, double b)
 
bool Expressions::Ne (double a, double b)
 
double Expressions::Neg (double a)
 
double Expressions::Sign (double a)
 
double Expressions::Tgauss (double a)
 
double Expressions::Add (double a, double b)
 
double Expressions::Sub (double a, double b)
 
double Expressions::Mpy (double a, double b)
 
double Expressions::Div (double a, double b)
 
double Expressions::getEkin ()
 
double Expressions::ranf ()
 
double Expressions::gauss ()
 
double Expressions::Max (double a, double b)
 
double Expressions::Min (double a, double b)
 
double Expressions::Mod (double a, double b)
 
double Expressions::Mina (const std::vector< double > &array)
 
double Expressions::Maxa (const std::vector< double > &array)
 
double Expressions::Rmsa (const std::vector< double > &array)
 
double Expressions::AbsMax (const std::vector< double > &array)
 
PtrToScalar< bool > Expressions::parseAnd (Statement &stat)
 
PtrToArray< double > Expressions::parseArrayFactor (Statement &stat)
 
PtrToArray< double > Expressions::parseArrayPrimary (Statement &stat)
 
PtrToArray< double > Expressions::parseArrayTerm (Statement &stat)
 
void Expressions::parseBracketList (Statement &stat, char close, std::list< Token > &result)
 
PtrToScalar< double > Expressions::parseFactor (Statement &stat)
 
PtrToScalar< double > Expressions::parsePrimary (Statement &stat)
 
PtrToScalar< bool > Expressions::parseRelation (Statement &stat)
 
PtrToScalar< double > Expressions::parseTerm (Statement &stat)
 
PtrToArray< double > Expressions::parseColumnGenerator (Statement &stat)
 
PtrToArray< double > Expressions::parseRowGenerator (Statement &stat)
 
PtrToArray< double > Expressions::parseTableGenerator (Statement &stat)
 
PtrToScalar< bool > Expressions::parseBool (Statement &)
 Parse boolean expression. More...
 
PtrToScalar< double > Expressions::parseReal (Statement &)
 Parse real expression. More...
 
double Expressions::parseRealConst (Statement &)
 Parse real constant. More...
 
std::string Expressions::parseString (Statement &, const char msg[])
 Parse string value. More...
 
PtrToArray< bool > Expressions::parseBoolArray (Statement &)
 Parse boolean array expression. More...
 
PtrToArray< double > Expressions::parseRealArray (Statement &)
 Parse real array expression. More...
 
PtrToArray< double > Expressions::parseRealConstArray (Statement &)
 Parse real array constant. More...
 
std::vector< std::string > Expressions::parseStringArray (Statement &)
 Parse string array. More...
 
void Expressions::parseDelimiter (Statement &stat, char delim)
 Test for one-character delimiter. More...
 
void Expressions::parseDelimiter (Statement &stat, const char delim[2])
 Test for two-character delimiter. More...
 
PlaceRep Expressions::parsePlace (Statement &)
 Parse place specification. More...
 
RangeRep Expressions::parseRange (Statement &)
 Parse range specification. More...
 
SRefAttr< double > * Expressions::parseReference (Statement &)
 Parse variable reference. More...
 
TableRowRep Expressions::parseTableRow (Statement &)
 Parse a token list (for macro argument and the like). More...
 
PtrToScalar< double > Expressions::parseTableExpression (Statement &, const Table *)
 Parse table expression (depends on a table's rows). More...
 
std::list< TokenExpressions::parseTokenList (Statement &)
 Parse a token list (for macro argument and the like). More...
 
std::vector< std::list< Token > > Expressions::parseTokenListArray (Statement &)
 Parse a token list array (for LIST commands). More...
 

Variables

const TableExpressions::currentTable = 0
 
OwnPtr< ATable > Expressions::currentArray