FuncExprData.h

Classes

FuncExprData -- Data and enumerations for functional expressions (full description)
Global Functions -- Output function (full description)

class FuncExprData

Types

enum opTypes

NOP = 0
UNAMIN
UNAPLUS
NON
POW
GTE
LTE
EQ
NEQ
OR
AND
CONDEX
CONDEX2
CONDEX3
ADD
SUB
MUL
DIV
LT
GT
CONST
PARAM
ARG
TOIMAG
LBRACE
RBRACE
LPAREN
RPAREN
LBR
RBR
COMMA
FINISH
GOTO
GOTOF
GOTOT
SIN
COS
ATAN
ATAN2
ASIN
ACOS
EXP
EXP10
EXP2
LOG
LOG10
LOG2
ERF
ERFC
PI
EE
ABS
FLOOR
CEIL
ROUND
INT
FRACT
SQRT
COMPLEX
REAL
IMAG
AMPL
PHASE
NopTypes
Number

enum opCategories

UNA2
Unary, binary 1 or 2 character
UNA1
BIN2
BIN1
SPEC
Special and functions
FUNC
NopCategories
Number

enum specAction

NONE
SAVENV
Save environment while compiling
GOTOPC
Indicate a GOTO
FINAL
Final expression codes

enum specPriority

RTLPRI = 44
Lowest priority at which right-to-left rather than left-to-right execution
SPCPRI = 60
Priority for specials - start
FINPRI = 00
Priority for finals

Interface

Public Members
FuncExprData()
~FuncExprData()
map<String, ExprOperator> &unary2()
const map<String, ExprOperator> &unary2() const
map<String, ExprOperator> &unary1()
const map<String, ExprOperator> &unary1() const
map<String, ExprOperator> &binary2()
const map<String, ExprOperator> &binary2() const
map<String, ExprOperator> &binary1()
const map<String, ExprOperator> &binary1() const
map<String, ExprOperator> &special()
const map<String, ExprOperator> &special() const
map<String, ExprOperator> &function()
const map<String, ExprOperator> &function() const
void print(ostream &os, const map<map, FuncExprData::ExprOperator> &m) const
void print(ostream &os, const FuncExprData::ExprOperator &pos) const

Description

Review Status

Date Reviewed:
yyyy/mm/dd

Prerequisite

Synopsis

This class provides enumerations for expression analysis; and data element descriptions

Example

Motivation

To tie the Glish language to non-linear fitting procedures

Thrown Exceptions

To Do

Member Description

enum opTypes

Operations

enum opCategories

Operation category

enum specAction

Special categories

enum specPriority

Special priority levels

FuncExprData()

Construct the data for the expression analysis

~FuncExprData()

Destructor

map<String, ExprOperator> &unary2()
const map<String, ExprOperator> &unary2() const
map<String, ExprOperator> &unary1()
const map<String, ExprOperator> &unary1() const
map<String, ExprOperator> &binary2()
const map<String, ExprOperator> &binary2() const
map<String, ExprOperator> &binary1()
const map<String, ExprOperator> &binary1() const
map<String, ExprOperator> &special()
const map<String, ExprOperator> &special() const
map<String, ExprOperator> &function()
const map<String, ExprOperator> &function() const

Accessors of the various maps

void print(ostream &os, const map<map, FuncExprData::ExprOperator> &m) const

Print an operator map

void print(ostream &os, const FuncExprData::ExprOperator &pos) const

Print an operation

Output function (source)

Interface

Private Members
ostream &operator<<(ostream &os, const FuncExprData &ed)

Description

Member Description

ostream &operator<<(ostream &os, const FuncExprData &ed)

Show a list of all defined operators and functions