Fix tabbing
[satune.git] / src / AST / element.h
index 8f0f0826548f314de74c2330fef547436677958a..da9b994e7df39219659b087c2631d9d7ff39c99b 100644 (file)
@@ -2,11 +2,30 @@
 #define ELEMENT_H
 #include "classlist.h"
 #include "mymemory.h"
+#include "ops.h"
+#include "structs.h"
 
+#define GETELEMENTTYPE(o) (((Element*)o)->type)
+
+//FIXME:TALK ABOUT ELEMENT
 struct Element {
+       ElementType type;
+};
+
+struct ElementSet {
+       Element base;
        Set * set;
+       ElementEncoding * encoding;
+};
+
+struct ElementFunction {
+       Element base;
+       Function * function;
+       VectorElement* Elements;
+       Boolean * overflowstatus;
 };
 
-Element * allocElement(Set *s);
-void deleteElement(Element *this);
+Element * allocElementSet(Set *s);
+Element* allocElementFunction(Function * function, Element ** array, uint numArrays, Boolean * overflowstatus);
+void deleteElement(Element *This);
 #endif