--- /dev/null
+#include "elementencoder.h"
+
+ElementEncoder * allocElementEncoder(ElementEncoderType type, Element *element) {
+ ElementEncoder * this=(ElementEncoder *)ourmalloc(sizeof(ElementEncoder));
+ this->element=element;
+ this->type=type;
+ return this;
+}
+
+void deleteElementEncoder(ElementEncoder *this) {
+ ourfree(this);
+}
--- /dev/null
+#ifndef ELEMENTENCODER_H
+#define ELEMENTENCODER_H
+#include "classlist.h"
+
+enum ElementEncoderType {
+ ONEHOT, UNARY, BINARY, ONEHOTBINARY
+};
+
+typedef enum ElementEncoderType ElementEncoderType;
+
+struct ElementEncoder {
+ ElementEncoderType type;
+ Element * element;
+};
+
+ElementEncoder * allocElementEncoder(ElementEncoderType type, Element *element);
+void deleteElementEncoder(ElementEncoder *this);
+#endif
--- /dev/null
+#include "functionencoder.h"
+
+FunctionEncoder * allocFunctionEncoder(FunctionEncoderType type, Function *function) {
+ FunctionEncoder * this=(FunctionEncoder *)ourmalloc(sizeof(FunctionEncoder));
+ this->function=function;
+ this->type=type;
+ return this;
+}
+
+void deleteFunctionEncoder(FunctionEncoder *this) {
+ ourfree(this);
+}
--- /dev/null
+#ifndef FUNCTIONENCODER_H
+#define FUNCTIONENCODER_H
+#include "classlist.h"
+
+enum FunctionEncoderType {
+ ENUMERATEIMPLICATIONS
+};
+
+typedef enum FunctionEncoderType FunctionEncoderType;
+
+struct FunctionEncoder {
+ FunctionEncoderType type;
+ Function * function;
+};
+
+FunctionEncoder * allocFunctionEncoder(FunctionEncoderType type, Function *function);
+void deleteFunctionEncoder(FunctionEncoder *this);
+#endif
uncrustify -c C.cfg --no-backup *.c
uncrustify -c C.cfg --no-backup *.h */*.h
+wc:
+ wc */*.c */*.h *.c *.h
+
.PHONY: $(PHONY)
# A 1-inch margin PDF generated by 'pandoc'
struct Order;
typedef struct Order Order;
+struct ElementEncoder;
+typedef struct ElementEncoder ElementEncoder;
+
+struct FunctionEncoder;
+typedef struct FunctionEncoder FunctionEncoder;
+
typedef unsigned int uint;
typedef uint64_t VarType;
#endif