#include "efunction.h"
#include "eparserinterpreter.h"

double efunction::eval(double x)
{
  estrhashof<evar> env;
  env.add("x",x);
  evar r(code_interpret(env,func));
  if (r.isNull()) return(0.0);
  if (r.getTypeid()==typeid(double)) return(r.get<double>());
  if (r.getTypeid()==typeid(float)) return(r.get<float>());
  if (r.getTypeid()==typeid(int)) return(r.get<int>());
  return(0.0);
}
/*
double eval(double x,const edoublearray& params);
double eval(const edoublearray& x,const edoublearray& params);
*/


