#ifndef NAIVEELEMENTENCODER_H
#define NAIVEELEMENTENCODER_H
#include "classlist.h"
+#include "structs.h"
+
+/**
+ * The NaiveEncoder assigns a predefined Encoding to each Element and Function.
+ * @param csolver
+ * @param encoder
+ */
-//For now, This function just simply goes through elements/functions and
-//assigns a predefined Encoding to each of them
void naiveEncodingDecision(CSolver* csolver);
-void encode(CSolver* csolver);
+void naiveEncodingConstraint(Boolean * This);
+void naiveEncodingLogicOp(BooleanLogic * This);
+void naiveEncodingPredicate(BooleanPredicate * This);
+void naiveEncodingElement(Element * This);
void baseBinaryIndexElementAssign(ElementEncoding *This);
-void naiveEncodeFunctionPredicate( FunctionEncoding *This);
-void naiveEncodeCircuitFunction(FunctionEncoding* This);
-void naiveEncodeEnumeratedFunction(FunctionEncoding* This);
-void naiveEncodeEnumTableFunc(ElementFunction* This);
-void naiveEncodeEnumOperatingFunc(ElementFunction* This);
+
#endif