#include "queue.h"

void Queue_Create(Queue *q,size_t len)
{
	List_Create(&q->list,len);
}

void Queue_Destroy(Queue *q)
{
	List_Destroy(&q->list);
}

void Queue_Enqueue(Queue *q,Pointer data)
{
	List_Insert(&q->list,data,0);
}

void Queue_Dequeue(Queue *q)
{
	List_Remove(&q->list,Queue_Length(q)-1);
}

size_t Queue_Length(Queue *q)
{
	return List_Length(&q->list);
}

Pointer Queue_Next(Queue *q)
{
	return List_Position(&q->list,Queue_Length(q)-1);
}
