casacore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Public Types | Public Member Functions | Private Attributes | List of all members
casacore::FuncExprData Class Reference

Data and enumerations for functional expressions. More...

#include <FuncExprData.h>

Classes

struct  ExprCompState
 The compilation state descriptor. More...
 
struct  ExprOperator
 The operator description: code; priority; # of arguments; # of arguments used up (or produced for functions) More...
 

Public Types

enum  opTypes {
  NOP,
  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
}
 Operations. More...
 
enum  opCategories {
  UNA2,
  UNA1,
  BIN2,
  BIN1,
  SPEC,
  FUNC,
  NopCategories
}
 Operation category. More...
 
enum  specAction {
  NONE,
  SAVENV,
  GOTOPC,
  FINAL
}
 Special categories. More...
 
enum  specPriority {
  RTLPRI,
  SPCPRI,
  FINPRI
}
 Special priority levels. More...
 

Public Member Functions

 FuncExprData ()
 Construct the data for the expression analysis. More...
 
 ~FuncExprData ()
 Destructor. More...
 
map< String, ExprOperator > & unary2 ()
 Accessors of the various maps. More...
 
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< String, FuncExprData::ExprOperator > &m) const
 Print an operator map. More...
 
void print (ostream &os, const FuncExprData::ExprOperator &pos) const
 Print an operation. More...
 

Private Attributes

map< String, ExprOperatoruna2_p
 Unary operators of 2 characters. More...
 
map< String, ExprOperatoruna1_p
 Unary operators of 1 character. More...
 
map< String, ExprOperatorbin2_p
 Binary operators of 2 characters. More...
 
map< String, ExprOperatorbin1_p
 Binary operators of 1 character. More...
 
map< String, ExprOperatorspop_p
 Special operators. More...
 
map< String, ExprOperatorfunc_p
 Function names. More...
 
map< opTypes, ExprOperatorallop_p
 All operators. More...
 

Detailed Description

Data and enumerations for functional expressions.

Intended use:

Internal

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

Definition at line 74 of file FuncExprData.h.

Member Enumeration Documentation

Operation category.

Enumerator
UNA2 

Unary, binary 1 or 2 character.

UNA1 
BIN2 
BIN1 
SPEC 

Special and functions.

FUNC 
NopCategories 

Number.

Definition at line 146 of file FuncExprData.h.

Operations.

Enumerator
NOP 
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.

Definition at line 78 of file FuncExprData.h.

Special categories.

Enumerator
NONE 
SAVENV 

Save environment while compiling.

GOTOPC 

Indicate a GOTO.

FINAL 

Final expression codes.

Definition at line 154 of file FuncExprData.h.

Special priority levels.

Enumerator
RTLPRI 

Lowest priority at which right-to-left rather than left-to-right execution.

SPCPRI 

Priority for specials - start.

FINPRI 

Priority for finals.

Definition at line 163 of file FuncExprData.h.

Constructor & Destructor Documentation

casacore::FuncExprData::FuncExprData ( )

Construct the data for the expression analysis.

casacore::FuncExprData::~FuncExprData ( )
inline

Destructor.

Definition at line 213 of file FuncExprData.h.

Member Function Documentation

map<String, ExprOperator>& casacore::FuncExprData::binary1 ( )
inline

Definition at line 224 of file FuncExprData.h.

References bin1_p.

const map<String, ExprOperator>& casacore::FuncExprData::binary1 ( ) const
inline

Definition at line 225 of file FuncExprData.h.

References bin1_p.

map<String, ExprOperator>& casacore::FuncExprData::binary2 ( )
inline

Definition at line 222 of file FuncExprData.h.

References bin2_p.

const map<String, ExprOperator>& casacore::FuncExprData::binary2 ( ) const
inline

Definition at line 223 of file FuncExprData.h.

References bin2_p.

map<String, ExprOperator>& casacore::FuncExprData::function ( )
inline

Definition at line 228 of file FuncExprData.h.

References func_p.

const map<String, ExprOperator>& casacore::FuncExprData::function ( ) const
inline

Definition at line 229 of file FuncExprData.h.

References func_p.

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

Print an operator map.

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

Print an operation.

map<String, ExprOperator>& casacore::FuncExprData::special ( )
inline

Definition at line 226 of file FuncExprData.h.

References spop_p.

const map<String, ExprOperator>& casacore::FuncExprData::special ( ) const
inline

Definition at line 227 of file FuncExprData.h.

References spop_p.

map<String, ExprOperator>& casacore::FuncExprData::unary1 ( )
inline

Definition at line 220 of file FuncExprData.h.

References una1_p.

const map<String, ExprOperator>& casacore::FuncExprData::unary1 ( ) const
inline

Definition at line 221 of file FuncExprData.h.

References una1_p.

map<String, ExprOperator>& casacore::FuncExprData::unary2 ( )
inline

Accessors of the various maps.

Definition at line 218 of file FuncExprData.h.

References una2_p.

const map<String, ExprOperator>& casacore::FuncExprData::unary2 ( ) const
inline

Definition at line 219 of file FuncExprData.h.

References una2_p.

Member Data Documentation

map<opTypes, ExprOperator> casacore::FuncExprData::allop_p
private

All operators.

Definition at line 252 of file FuncExprData.h.

map<String, ExprOperator> casacore::FuncExprData::bin1_p
private

Binary operators of 1 character.

Definition at line 246 of file FuncExprData.h.

Referenced by binary1().

map<String, ExprOperator> casacore::FuncExprData::bin2_p
private

Binary operators of 2 characters.

Definition at line 244 of file FuncExprData.h.

Referenced by binary2().

map<String, ExprOperator> casacore::FuncExprData::func_p
private

Function names.

Definition at line 250 of file FuncExprData.h.

Referenced by function().

map<String, ExprOperator> casacore::FuncExprData::spop_p
private

Special operators.

Definition at line 248 of file FuncExprData.h.

Referenced by special().

map<String, ExprOperator> casacore::FuncExprData::una1_p
private

Unary operators of 1 character.

Definition at line 242 of file FuncExprData.h.

Referenced by unary1().

map<String, ExprOperator> casacore::FuncExprData::una2_p
private

Unary operators of 2 characters.

Definition at line 240 of file FuncExprData.h.

Referenced by unary2().


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