6 * Created on September 7, 2017, 3:38 PM
9 #include "serializer.h"
14 Serializer::Serializer(const char *file) {
15 filedesc = open(file, O_WRONLY | O_CREAT | O_TRUNC, 0666);
22 Serializer::~Serializer() {
23 if (-1 == close(filedesc)) {
28 void Serializer::mywrite(const void *__buf, size_t __n) {
29 write (filedesc, __buf, __n);
33 void serializeBooleanEdge(Serializer *serializer, BooleanEdge be) {
34 if (be == BooleanEdge(NULL))
36 be.getBoolean()->serialize(serializer);
37 ASTNodeType type = BOOLEANEDGE;
38 serializer->mywrite(&type, sizeof(ASTNodeType));
39 Boolean *boolean = be.getRaw();
40 serializer->mywrite(&boolean, sizeof(Boolean *));