view Bison-Flex/CALC/discrete-parser/calc-driver.h @ 0:db40c85cad7a default tip

upload sample source
author nobuyasu <dimolto@cr.ie.u-ryukyu.ac.jp>
date Mon, 09 May 2011 03:11:59 +0900
parents
children
line wrap: on
line source

#ifndef __CALC_DRIVER_H__
#define	__CALC_DRIVER_H__

#include <string>
#include <map>
#include "node.h"

class calc_driver {
  public:
	calc_driver();
	virtual ~calc_driver();

	bool calc(const std::string &f);

	int value(const std::string *name)
	{
		return values[*name];
	}
	void assign(const std::string &value, cnode *node);
	void print(cnode *node);
	void list();

	// Error handling.
	void error(const std::string& m);

  private:
	std::map<std::string, int> values;	// 変数テーブル
} ;

#endif