// // Created by Antoine Bartuccio on 22/05/2018. // #include #include "List.h" GETTER(Element, Element*, next) GETTER(Element, Element*, previous) GETTER(Element, void*, data) void set_previous_Element(THIS(Element), Element *previous){ this->previous = previous; } void set_next_Element(THIS(Element), Element *next){ this->next = next; } void $_free__Element(THIS(Element)){ free(this); } Element *_init_element(void *data, size_t size, List *list){ Element *el = (Element*) malloc_or_die(sizeof(Element)); void *newData = malloc_or_die(sizeof(size)); memcpy(newData, data, size); el->list = list; el->data = newData; el->previous = NULL; el->next = NULL; LINK_ALL(Element, el, get_next, get_previous, get_data, set_next, set_previous) return el; }