typedef struct ExQueue ExQueue; ExQueue *ex_queue_new (int element_size); char * ex_queue_append (ExQueue *queue, int n_elements); char * ex_queue_prepend (ExQueue *queue, int n_elements); char * ex_queue_pop_head (ExQueue *queue, int n_elements); char * ex_queue_pop_tail (ExQueue *queue, int n_elements); void ex_queue_free (ExQueue *queue); int ex_queue_get_n_elements (ExQueue *queue);