// ******************************************************** // Implementation file QueueL.cpp for the ADT queue. // ADT list implementation. // ******************************************************** #include "QueueL.h" // header file queueClass::queueClass() { } // end default constructor queueClass::queueClass(const queueClass& Q): L(Q.L) { } // end copy constructor queueClass::~queueClass() { } // end destructor bool queueClass::QueueIsEmpty() const { return bool(L.ListLength() == 0); } // end QueueIsEmpty void queueClass::QueueInsert(queueItemType NewItem, bool& Success) { L.ListInsert(L.ListLength()+1, NewItem, Success); } // end QueueInsert void queueClass::QueueDelete(bool& Success) { L.ListDelete(1, Success); // Assertion: If list was empty at entry, Success // is false. } // end QueueDelete void queueClass::QueueDelete(queueItemType& QueueFront, bool& Success) { L.ListRetrieve(1, QueueFront, Success); if (Success) L.ListDelete(1, Success); // Assertion: If list was empty at entry, Success // is false. } // end QueueDelete void queueClass::GetQueueFront(queueItemType& QueueFront, bool& Success) const { L.ListRetrieve(1, QueueFront, Success); // Assertion: If list was empty at entry, Success // is false. } // end GetQueueFront // End of implementation file.