correct convertion from non decimal base
[calc.git] / parser.h
index 49acc2080005a8c4cef2f635c71010889f71d09a..bf28113c83ae94be6923d3e1a233db7fbb3a3436 100644 (file)
--- a/parser.h
+++ b/parser.h
@@ -1,50 +1,12 @@
 #ifndef __PARSER_H__
 #define __PARSER_H__
 
+#include "element.h"
+
 /* global variables */
 
 extern double answer;
 
-/* function type */
-
-typedef enum {
-    Val = 0, Sig,
-    Add, Sub,
-    Mul, Div, Mod,
-    Pow, Sqr,
-    Cos, Sin, Atan,
-    Log, Exp,
-    Store, Recall, Inc, Dec, Disp,
-    Quit, Help,
-    Ans, E, Pi,
-    Equal, Diff, Ge, Le, Gt, Lt,
-    And, Or, Not,
-    Cond, While
-} func_t;
-
-/* keyword type */
-
-typedef struct _keyword_t {
-    char *keyword;
-    func_t func;
-    int nbops;
-    int offset;
-    float prio;
-} keyword_t;
-
-/* calculus element type */
-
-#define MAX_OPERANDS 10
-typedef struct _element_t {
-    func_t func;
-    int nbops;
-    struct _element_t *ops[MAX_OPERANDS];
-    double value;
-    int prio;
-} element_t;
-
-#define ERROR_OP ((element_t *)(-1))
-
 /* parser function */
 
 void delelement (element_t *root);