]> mj.ucw.cz Git - umpf.git/blobdiff - umpf.h
start with conditions
[umpf.git] / umpf.h
diff --git a/umpf.h b/umpf.h
index 179229f0da7a105b86445320812e2d6a181fe2d6..b5b7df82d6d43b2f08765736077af9c6fd27ac5c 100644 (file)
--- a/umpf.h
+++ b/umpf.h
@@ -26,7 +26,7 @@ struct tree {
                        enum {
                                OP_REL,
                                OP_BOOL,
-                               JUST_BOOL /* value only in left */      
+                               JUST_BOOL /* value only in left, no op */       
                        } type;
                        int op;
                        struct tree* left;
@@ -127,7 +127,8 @@ struct code {
                DELIVER,
                CALL_EXT,
                NOP,
-               CAT
+               CAT,
+               GT
        } opcode;
 
        union {
@@ -153,6 +154,11 @@ struct code {
                } cat;
                struct {
                } nop;
+               struct {
+                       int l;
+                       int r;
+                       int res; /* result */
+               } gt;
        } u;
 };
 
@@ -172,7 +178,7 @@ int cur_const_n;
 int cur_const_s;
 
 void init(void);
-void compile(struct tree* t);
+void compile(struct tree* t, struct list* where);
 int find_var(char* name, struct list* hash);
 int store_const(char* c);
 struct list* new_var_hash(void);