lTo do an enqueue, call Reset followed by Insert.
l To dequeue, call Advamce_to_End
followed by Insert.
lAll of the pointer work was done in the list_position, leaving the queue writer to reason at the appropriate level of abstraction, rather than needing to worry about setting up nodes or links.
lA client of the queue component will simply call enqueues and dequeues, doing all thinking and reasoning at that level without any need to worry about low level details.