Program Listing for File StackAlgorithms.h
↰ Return to documentation for file (ADS/stack/StackAlgorithms.h)
/*--------------------------------------------------------------------------*/
/*------------------------- File StackAlgorithms.h -------------------------*/
/*--------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------*/
/*----------------------------- DEFINITIONS --------------------------------*/
/*--------------------------------------------------------------------------*/
#ifndef __ADS_StackAlgorithms
#define __ADS_StackAlgorithms
/* self-identification: #endif constant */
/*--------------------------------------------------------------------------*/
/*------------------------------ INCLUDES ----------------------------------*/
/*--------------------------------------------------------------------------*/
#include "ADS/ADT.h"
#include "ADS/Contract.h"
#include "ADS/sequence/List.h"
#include "ADS/stack/SequenceStack.h"
#include <string>
#include <vector>
/*--------------------------------------------------------------------------*/
/*--------------------------- NAMESPACE ------------------------------------*/
/*--------------------------------------------------------------------------*/
namespace ADS {
inline bool isPalindrome( const std::string & s );
template< Stack S >
void sortStack( S & s );
template< Stack S >
void removeGreater( S & s , const typename S::Item & k );
template< Stack S , class F >
void forEachBottomUp( S & s , F && f );
/*--------------------------------------------------------------------------*/
} // end( namespace ADS )
/*--------------------------------------------------------------------------*/
/*-------------------------- IMPLEMENTATION --------------------------------*/
/*--------------------------------------------------------------------------*/
#include "ADS/stack/impl/StackAlgorithms.tpp"
/*--------------------------------------------------------------------------*/
#endif /* StackAlgorithms.h included */
/*--------------------------------------------------------------------------*/
/*----------------------- End File StackAlgorithms.h -----------------------*/
/*--------------------------------------------------------------------------*/