/****************************************************************************
**
**
** QStack class documentation
**
** Copyright (C) 1992-2000 Trolltech AS. All rights reserved.
**
** This file is part of the Qt GUI Toolkit.
**
** This file may be distributed under the terms of the Q Public License
** as defined by Trolltech AS of Norway and appearing in the file
** LICENSE.QPL included in the packaging of this file.
**
** This file may be distributed and/or modified under the terms of the
** GNU General Public License version 2 as published by the Free Software
** Foundation and appearing in the file LICENSE.GPL included in the
** packaging of this file.
**
** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition
** licenses may use this file in accordance with the Qt Commercial License
** Agreement provided with the Software.
**
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
**
** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
** information about Qt Commercial License Agreements.
** See http://www.trolltech.com/qpl/ for QPL licensing information.
** See http://www.trolltech.com/gpl/ for GPL licensing information.
**
** Contact info@trolltech.com if any conditions of this licensing are
** not clear to you.
**
**********************************************************************/
/*****************************************************************************
QStack documentation
*****************************************************************************/
/*!
\class QStack qstack.h
\brief The QStack class is a template class that provides a stack.
\ingroup collection
\ingroup tools
QStack is implemented as a template class. Define a template
instance QStack\<X\> to create a stack that operates on pointers to
X, or X*.
A stack is a Last In, First Out (LIFO) structure. Items are added to
the top of the stack with push() and retrieved from the top
with pop().
\sa \link collection.html Collection Classes\endlink
*/
/*! \fn QStack::QStack ()
Creates and empty stack.
*/
/*! \fn QStack::QStack (const QStack<type>& s)
Creates a stack by making a shallow copy of another stack.
*/
/*! \fn QStack::~QStack ()
Destroys the stack. All items will be deleted if autoDelete() is TRUE.
*/
/*! \fn QStack<type>& QStack::operator= (const QStack<type>& s)
Sets the contents of this stack by making a shallow copy of another stack.
Elements currently in this stack will be deleted if autoDelete() is TRUE.
*/
/*! \fn bool QStack::isEmpty () const
Returns TRUE is the stack contains no elements to be \link pop() popped\endlink.
*/
/*! \fn void QStack::push (const type* d)
Adds an element to the top of the stack. Last in, first out.
*/
/*! \fn type* QStack::pop ()
Removes the top item from the stack and returns it.
*/
/*! \fn bool QStack::remove ()
Removes the top item from the stack and deletes it if
autoDelete() is TRUE. Returns TRUE if there was an item to pop.
\sa clear()
*/
/*! \fn void QStack::clear()
Removes all items from the stack, deleting them if
autoDelete() is TRUE.
\sa remove()
*/
/*! \fn uint QStack::count() const
Returns the number of items in the stack.
\sa isEmpty()
*/
/*! \fn type* QStack::top () const
Returns a reference to the top item on the stack (most recently pushed).
The stack is not changed.
*/
/*! \fn QStack::operator type* ()const
Returns a reference to the top item on the stack (most recently pushed).
The stack is not changed.
*/
/*! \fn type* QStack::current () const
Returns a reference to the top item on the stack (most recently pushed).
The stack is not changed.
*/
/*! \fn bool QStack::autoDelete() const
The same as QCollection::autoDelete().
\sa setAutoDelete()
*/
/*! \fn void QStack::setAutoDelete( bool enable )
The same as QCollection::setAutoDelete().
\sa autoDelete()
*/