|
FreeFem 3.5.x
|
provides the syntaxical analysis More...
#include <femParser.hpp>
Public Types | |
Enums | |
| enum | GraphicsType { FEM_GRAPHIC = 0, FEM_NO_GRAPHIC = 1 } |
| graphics type More... | |
Public Member Functions | |
Constructors and destructor | |
| femParser () | |
| default constructor | |
| ~femParser () | |
| destructor | |
Mutators | |
| void | setGraphicType (GraphicsType gt) |
| set the graphic type | |
| void | setText (const char *__t) |
| set the buffer to be parsed | |
Methods | |
| void | parse () |
| parse the buffer | |
| void | chvar (void) |
| noeudPtr | instruction (void) |
| creal | eval (noeudPtr) |
| evaluate the node | |
| void | bucheron (noeudPtr) |
| kill the node | |
| void | libere (void) |
| free everything | |
| void | showtree (noeudPtr t) |
| show the tree | |
| void | initsyntax () |
| initialise the parser | |
| void | libereparam (void) |
| free the parameters | |
| void | initparam () |
| init the parameters | |
| femMeshCptr | getMesh () const |
| get the mesh | |
| static femParser * | New () |
| create a new instance | |
provides the syntaxical analysis
The syntaxic analyser works closely with the lexical analyser.
graphics type
{
FEM_GRAPHIC = 0,
FEM_NO_GRAPHIC = 1
};
| fem::femParser::femParser | ( | ) |
default constructor
| __t | string to be parsed by the analyser |
: __tree(), __function_list(), __mesh(), __graph( new femGraphicDeviceIndependent( &__mesh ) ), pt( 0 ), nbsd( 0 ), nbs( 0 ), nba( 0 ), Iter( 1 ), waitm( 0 ), __text( 0 ), __graphic_type( FEM_GRAPHIC ) { numnoeuds = 0; waitm = 1; pt = NULL; noeuds = new noeudPtr[MAXTREENODES]; sd = new long[2*MAXSD]; arete = new long[2 * MAXBDYVERTEX]; ngbdy = new int[MAXBDYVERTEX]; cr = new float[2*MAXBDYVERTEX+1]; hh = new float[MAXBDYVERTEX]; memset (hh, 0, MAXBDYVERTEX*sizeof(float)); flag.si = 0; flag.syst = 0; flag.param = 0; flag.complexe = 0; flag.precise = 0; }