// VCalcParserTypes.h: VisualCalc Parser Types
//
#if !defined(__AFX_VCALCPARSERTYPES_H_INCLUDED__)
#define __AFX_VCALCPARSERTYPES_H_INCLUDED__
#if _MSC_VER > 1000
#pragma once
#endif
#include "VCalcParserException.h"
// Type for the handled operands and results
typedef long double VALUES_TYPE;
// Type for recognized separation tokens
typedef enum {
TV_NUMBER,
TV_IDENTIFIER,
TV_END,
TV_SEQ = ',',
TV_PLUS = '+',
TV_MINUS = '-',
TV_MUL = '*',
TV_DIV = '/',
TV_POW = '^',
TV_MOD = '%',
TV_FACT = '!',
TV_DEG = '�',
TV_LP = '(',
TV_RP = ')',
TV_ASSIGN = '='
} TokenValue;
// Type for an entry in the answers history
typedef struct {
std::string m_strFormula;
VALUES_TYPE m_valResult;
} AnswerItem;
#endif // !defined(__AFX_VCALCPARSERTYPES_H_INCLUDED__)