From db18e268cc989852265ced5bef57f2acd13caafd Mon Sep 17 00:00:00 2001 From: bdemsky Date: Thu, 15 Jun 2017 21:45:23 -0700 Subject: [PATCH] Add placeholders for encoders --- src/Encoders/elementencoder.c | 12 ++++++++++++ src/Encoders/elementencoder.h | 18 ++++++++++++++++++ src/Encoders/functionencoder.c | 12 ++++++++++++ src/Encoders/functionencoder.h | 18 ++++++++++++++++++ src/Makefile | 3 +++ src/classlist.h | 6 ++++++ 6 files changed, 69 insertions(+) create mode 100644 src/Encoders/elementencoder.c create mode 100644 src/Encoders/elementencoder.h create mode 100644 src/Encoders/functionencoder.c create mode 100644 src/Encoders/functionencoder.h diff --git a/src/Encoders/elementencoder.c b/src/Encoders/elementencoder.c new file mode 100644 index 0000000..407a478 --- /dev/null +++ b/src/Encoders/elementencoder.c @@ -0,0 +1,12 @@ +#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); +} diff --git a/src/Encoders/elementencoder.h b/src/Encoders/elementencoder.h new file mode 100644 index 0000000..5c03adb --- /dev/null +++ b/src/Encoders/elementencoder.h @@ -0,0 +1,18 @@ +#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 diff --git a/src/Encoders/functionencoder.c b/src/Encoders/functionencoder.c new file mode 100644 index 0000000..119623a --- /dev/null +++ b/src/Encoders/functionencoder.c @@ -0,0 +1,12 @@ +#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); +} diff --git a/src/Encoders/functionencoder.h b/src/Encoders/functionencoder.h new file mode 100644 index 0000000..3473d95 --- /dev/null +++ b/src/Encoders/functionencoder.h @@ -0,0 +1,18 @@ +#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 diff --git a/src/Makefile b/src/Makefile index 366cfd5..311e361 100644 --- a/src/Makefile +++ b/src/Makefile @@ -65,6 +65,9 @@ tabbing: 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' diff --git a/src/classlist.h b/src/classlist.h index c6a7cb7..ac07af9 100644 --- a/src/classlist.h +++ b/src/classlist.h @@ -48,6 +48,12 @@ typedef struct Table Table; 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 -- 2.34.1