ROSE  0.11.145.0
List of all members
WorkListNonUnique< T, Compare > Class Template Reference

Description

template<typename T, class Compare = std::less<T>>
class WorkListNonUnique< T, Compare >

A version of WorkList that does not check for uniqueness by default.

The insertion methods do not check for uniqueness and always insert the specified item into the list. The uniqueness checking can be enabled per insert operation by specifying a true value for the check_uniqueness argument. Insertions are O(1) by default, but O(N) if a uniqueness check is performed. Existence checks are always O(N).

Definition at line 153 of file WorkLists.h.

#include <frontend/BinaryFormats/WorkLists.h>

Inheritance diagram for WorkListNonUnique< T, Compare >:
Inheritance graph
[legend]
Collaboration diagram for WorkListNonUnique< T, Compare >:
Collaboration graph
[legend]

Additional Inherited Members

- Public Types inherited from WorkList< T, Compare >
typedef T value_type
 
typedef Compare key_compare
 
- Public Member Functions inherited from WorkList< T, Compare >
 WorkList (bool check_uniqueness=false)
 
bool empty () const
 Returns true if this work list is empty. More...
 
size_t size () const
 Returns the number of items in the work list. More...
 
void clear ()
 Reset the list to an empty state. More...
 
bool exists (const T &item) const
 Return true if the specified item is already on the work list. More...
 
bool unshift (const T &, boost::tribool check_uniqueness=boost::indeterminate)
 Add an item to the front of the work list. More...
 
template<class Iterator >
size_t unshift (const Iterator &begin, const Iterator &end, boost::tribool check_uniqueness=boost::indeterminate)
 Adds multiple items to the front of the work list. More...
 
shift ()
 Remove and return the item from the front of the work list. More...
 
bool push (const T &, boost::tribool check_uniqueness=boost::logic::indeterminate)
 Add an item to the back of the work list. More...
 
template<class Iterator >
size_t push (const Iterator &begin, const Iterator &end, boost::tribool check_uniqueness=boost::indeterminate)
 Adds multiple items to the back of the work list. More...
 
pop ()
 Remove an item from the back of the work list. More...
 
take ()
 Remove and return an item from the front of the work list. More...
 
const T & front () const
 Returns the object at the front/back of the list without removing it. More...
 
const T & back () const
 Returns the object at the front/back of the list without removing it. More...
 
void add (const T &item)
 Adds an item(s) to the end of the queue. More...
 
void add (const std::vector< T > &items)
 Adds an item(s) to the end of the queue. More...
 
void add (const std::set< T > &items)
 Adds an item(s) to the end of the queue. More...
 

The documentation for this class was generated from the following file: