This class provides a safe eval replacement.
The method eval() will only evaluate the expressions considered safe (whitelisted). By default it has a whitelist of mathematical expressions that can be turn off using defaultSafe=False at init
The user can add more safe functions passing a safedict to the addSafe() or init methods.
Functions can be removed by name using removeSafe()
Note: In order to use variables defined outside, the user must explicitly declare them safe.
The values in safedict will be evaluable (whitelisted) The safedict is as follows: {“eval_name”:object, ...}. The evaluator will interpret eval_name as object.
safe eval
returns the currently whitelisted expressions
Removes an object from the whitelist
restores the safe dict with wich the evaluator was instantiated