Interface for names management. More...
#include "tlib.hh"
#include "propagate.hh"
#include <string>
Go to the source code of this file.
Functions | |
bool | getDefNameProperty (Tree t, Tree &id) |
Indicates the identifier (if any) the expression was a definition of. | |
void | setSigListNickName (Tree lsig, const string &nickname) |
set the nickname property of a list of signals. | |
void | setSigNickname (Tree t, const string &id) |
Set the nickname property of a signal. | |
bool | getSigNickname (Tree t, Tree &id) |
Get the nickname property of a signal. | |
bool | searchIdDef (Tree id, Tree &def, Tree lenv) |
Search the environment for the definition of a symbol ID and return it. | |
Tree | pushValueDef (Tree id, Tree def, Tree lenv) |
Push a new layer and add a single definition. | |
Tree | simplifyPattern (Tree pattern) |
Simplify a block-diagram pattern by computing its numerical sub-expressions. |
Interface for names management.
Definition in file names.hh.
Indicates the identifier (if any) the expression was a definition of.
t | the expression | |
id | reference to the identifier |
Push a new layer and add a single definition.
id | the symbol id to be defined | |
def | the definition to be binded to the symbol id | |
lenv | the environment where to push the layer and add the definition |
Definition at line 1189 of file eval.cpp.
01190 { 01191 Tree lenv2 = pushNewLayer(lenv); 01192 addLayerDef(id, def, lenv2); 01193 return lenv2; 01194 }
Search the environment for the definition of a symbol ID and return it.
id | the symbol ID to search | |
def | where to store the definition if any | |
lenv | the environment |
Definition at line 1229 of file eval.cpp.
References CTree::branch().
01230 { 01231 // search the environment until a definition is found 01232 // or nil (the empty environment) is reached 01233 while (!isNil(lenv) && !getProperty(lenv, id, def)) { 01234 lenv = lenv->branch(0); 01235 } 01236 return !isNil(lenv); 01237 }
void setSigListNickName | ( | Tree | lsig, | |
const string & | nickname | |||
) |
set the nickname property of a list of signals.
If the list contains more than one signal, adds an index to the nickname
Simplify a block-diagram pattern by computing its numerical sub-expressions.
pattern | an evaluated block-diagram |
Definition at line 605 of file eval.cpp.
00606 { 00607 Tree num; 00608 if (!getNumericProperty(value,num)) { 00609 if (!isBoxNumeric(value,num)) { 00610 num = value; 00611 } 00612 setNumericProperty(value,num); 00613 } 00614 return num; 00615 }