Inline Encoding Structs into appropriate AST Nodes
[satune.git] / src / Encoders / elementencoding.c
1 #include "elementencoding.h"
2
3 void initElementEncoding(ElementEncoding * This, Element *element) {
4         This->element=element;
5         This->type=ELEM_UNASSIGNED;
6         This->variables=NULL;
7         This->encodingArray=NULL;
8         This->numVars=0;
9 }
10
11 void deleteElementEncoding(ElementEncoding *This) {
12         if (This->variables!=NULL)
13                 ourfree(This->variables);
14         if (This->encodingArray!=NULL)
15                 ourfree(This->encodingArray);
16         if (This->inUseArray!=NULL)
17                 ourfree(This->inUseArray);
18 }
19
20 void allocEncodingArrayElement(ElementEncoding *This, uint size) {
21         This->encodingArray=ourcalloc(1, sizeof(uint64_t)*size);
22 }
23
24 void allocInUseArrayElement(ElementEncoding *This, uint size) {
25         This->inUseArray=ourcalloc(1, size >> 6);
26 }