edits
authorbdemsky <bdemsky@uci.edu>
Fri, 8 Sep 2017 03:00:54 +0000 (20:00 -0700)
committerbdemsky <bdemsky@uci.edu>
Fri, 8 Sep 2017 03:01:11 +0000 (20:01 -0700)
src/ASTAnalyses/Encoding/encodinggraph.cc [new file with mode: 0644]
src/ASTAnalyses/Encoding/encodinggraph.h [new file with mode: 0644]

diff --git a/src/ASTAnalyses/Encoding/encodinggraph.cc b/src/ASTAnalyses/Encoding/encodinggraph.cc
new file mode 100644 (file)
index 0000000..e337e56
--- /dev/null
@@ -0,0 +1,37 @@
+#include "encodinggraph.h"
+#include "iterator.h"
+#include "element.h"
+
+EncodingGraph::EncodingGraph(CSolver * _solver) :
+       solver(_solver) {
+       
+
+}
+
+EncodingNode * EncodingGraph::getNode(Element * element) {
+       return NULL;
+}
+
+void EncodingGraph::buildGraph() {
+       ElementIterator it(solver);
+       while(it.hasNext()) {
+               Element * e = it.next();
+               processElement(e);
+       }
+}
+
+void EncodingGraph::processElement(Element *e) {
+       switch(e->type) {
+       case ELEMSET: {
+               break;
+       }
+       case ELEMFUNCRETURN: {
+               break;
+       }
+       case ELEMCONST: {
+               break;
+       }
+       default:
+               ASSERT(0);
+       }
+}
diff --git a/src/ASTAnalyses/Encoding/encodinggraph.h b/src/ASTAnalyses/Encoding/encodinggraph.h
new file mode 100644 (file)
index 0000000..452a034
--- /dev/null
@@ -0,0 +1,35 @@
+#ifndef ENCODINGGRAPH_H
+#define ENCODINGGRAPH_H
+#include "classlist.h"
+#include "structs.h"
+
+class EncodingGraph {
+ public:
+       EncodingGraph(CSolver * solver);
+       EncodingNode * getNode(Element * element);
+       void buildGraph();
+       
+       CMEMALLOC;
+ private:
+       CSolver * solver;
+       HashTableEncoding encodingMap;
+       void processElement(Element *e);
+
+};
+
+class EncodingNode {
+ public:
+       
+       CMEMALLOC;
+ private:
+       
+};
+
+class EncodingEdge {
+ public:
+
+       CMEMALLOC;
+ private:
+};
+
+#endif