casa  $Rev:20696$
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Classes | Public Types | Public Member Functions | Private Attributes
casa::FuncExprData Class Reference

Data and enumerations for functional expressions. More...

#include <FuncExprData.h>

List of all members.

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

Private Attributes

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

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

Construct the data for the expression analysis.

Destructor.

Definition at line 213 of file FuncExprData.h.


Member Function Documentation

Definition at line 224 of file FuncExprData.h.

References bin1_p.

const map<String, ExprOperator>& casa::FuncExprData::binary1 ( ) const [inline]

Definition at line 225 of file FuncExprData.h.

References bin1_p.

Definition at line 222 of file FuncExprData.h.

References bin2_p.

const map<String, ExprOperator>& casa::FuncExprData::binary2 ( ) const [inline]

Definition at line 223 of file FuncExprData.h.

References bin2_p.

Definition at line 228 of file FuncExprData.h.

References func_p.

const map<String, ExprOperator>& casa::FuncExprData::function ( ) const [inline]

Definition at line 229 of file FuncExprData.h.

References func_p.

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

Print an operator map.

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

Print an operation.

Definition at line 226 of file FuncExprData.h.

References spop_p.

const map<String, ExprOperator>& casa::FuncExprData::special ( ) const [inline]

Definition at line 227 of file FuncExprData.h.

References spop_p.

Definition at line 220 of file FuncExprData.h.

References una1_p.

const map<String, ExprOperator>& casa::FuncExprData::unary1 ( ) const [inline]

Definition at line 221 of file FuncExprData.h.

References una1_p.

Accessors of the various maps.

Definition at line 218 of file FuncExprData.h.

References una2_p.

const map<String, ExprOperator>& casa::FuncExprData::unary2 ( ) const [inline]

Definition at line 219 of file FuncExprData.h.

References una2_p.


Member Data Documentation

All operators.

Definition at line 252 of file FuncExprData.h.

Binary operators of 1 character.

Definition at line 246 of file FuncExprData.h.

Referenced by binary1().

Binary operators of 2 characters.

Definition at line 244 of file FuncExprData.h.

Referenced by binary2().

Function names.

Definition at line 250 of file FuncExprData.h.

Referenced by function().

Special operators.

Definition at line 248 of file FuncExprData.h.

Referenced by special().

Unary operators of 1 character.

Definition at line 242 of file FuncExprData.h.

Referenced by unary1().

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: