---
name: "fem_femParser"
section: "3"
platform: "linux"
package: "libfreefem-dev"
version: "3.5.7-3"
release: "Debian 3.1 (Sarge)"
platforms: ["linux"]
url: "https://new.carta.tech/fem_femParser"
---

# fem\_femParser(3)

provides the syntaxical analysis

## NAME

fem::femParser - provides the syntaxical analysis

## SYNOPSIS

`#include <femParser.hpp>`

### 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*  **femParser** \* **New** ()\
 *create a new instance*

### Public Types

**Enums**\

enum **GraphicsType** { **FEM\_GRAPHIC** =  0, **FEM\_NO\_GRAPHIC** =  1 }\
 *graphics type*

### Public Member Functions

**Constructors and destructor**\

**femParser** ()\
 **~femParser** ()\
 *destructor*

**Mutators**\

void **setGraphicType** (**GraphicsType** gt)\
 *set the graphic type*  void **setText** (const  char \*\_\_t)\
 *set the buffer to be parsed*

## Detailed Description

provides the syntaxical analysis

The syntaxic analyser works closely with the lexical analyser.

**Author:**

Christophe Prud'homme \<prudhomm@ann.jussieu.fr\>

**Version:**

**Id**.RS 4 **femParser.hpp**,v 1.3 2001/07/12 15:15:39 delpinux Exp

## Member Enumeration Documentation

### enum fem::femParser::GraphicsType

graphics type

**Enumeration values:**

- *FEM\_GRAPHIC*

  *show the graphics*

- *FEM\_NO\_GRAPHIC*

  *do not show the graphics*

```
101     {
102       FEM_GRAPHIC    = 0,
103       FEM_NO_GRAPHIC = 1
104     };
```

## Constructor & Destructor Documentation

### fem::femParser::femParser ()

**Parameters:**

*\_\_t string to be parsed by the analyser*

```
124   :
125   __tree(),
126   __function_list(),
127   __mesh(),
128   __graph( new femGraphicDeviceIndependent( &__mesh ) ),
129   pt( 0 ),
130   nbsd( 0 ),
131   nbs( 0 ),
132   nba( 0 ),
133   Iter( 1 ),
134   waitm( 0 ),
135   __text( 0 ),
136   __graphic_type( FEM_GRAPHIC )
137 {
138   numnoeuds = 0;
139   waitm = 1;
140   pt = NULL;
141   noeuds = new noeudPtr[MAXTREENODES];
142   sd = new long[2*MAXSD];
143   arete = new long[2 * MAXBDYVERTEX];
144   ngbdy = new int[MAXBDYVERTEX];
145   cr = new float[2*MAXBDYVERTEX+1];
146   hh = new float[MAXBDYVERTEX];
147   memset (hh, 0, MAXBDYVERTEX*sizeof(float));
148   flag.si = 0;
149   flag.syst = 0;
150   flag.param = 0;
151   flag.complexe = 0;
152   flag.precise = 0;
153 }
```

## Author

*Generated automatically by Doxygen for FreeFem from the source code.*
