Rosetta 3.3
Classes | Namespaces | Functions
src/utility/keys/UserKey.hh File Reference

User-created hidden index key abstract base class. More...

#include <utility/keys/UserKey.fwd.hh>
#include <utility/down_cast.hh>
#include <utility/keys/Key.hh>
#include <utility/keys/NoClient.hh>
#include <cassert>

Classes

class  utility::keys::UserKey< O, S, C >
 User-created hidden index key abstract base class. More...

Namespaces

namespace  utility
 

unresizable vector whose size is known at compile time, which may be allocated on the stack, and which indexes from 1.


namespace  utility::keys
 

Keys and key-accessed containers for fast, safe object lookup.


Functions

template<typename O , typename S , typename C >
bool utility::keys::operator== (UserKey< O, S, C > const &a, UserKey< O, S, C > const &b)
 UserKey == UserKey.
template<typename O , typename S , typename C >
bool utility::keys::operator!= (UserKey< O, S, C > const &a, UserKey< O, S, C > const &b)
 UserKey != UserKey.
template<typename O , typename S , typename C >
bool utility::keys::operator< (UserKey< O, S, C > const &a, UserKey< O, S, C > const &b)
 UserKey < UserKey.
template<typename O , typename S , typename C >
bool utility::keys::operator<= (UserKey< O, S, C > const &a, UserKey< O, S, C > const &b)
 UserKey <= UserKey.
template<typename O , typename S , typename C >
bool utility::keys::operator>= (UserKey< O, S, C > const &a, UserKey< O, S, C > const &b)
 UserKey >= UserKey.
template<typename O , typename S , typename C >
bool utility::keys::operator> (UserKey< O, S, C > const &a, UserKey< O, S, C > const &b)
 UserKey > UserKey.
template<typename O , typename S , typename C >
bool utility::keys::sequential (UserKey< O, S, C > const &a, UserKey< O, S, C > const &b)
 UserKeys are sequential?

Detailed Description

User-created hidden index key abstract base class.

Author:
Stuart G. Mentzer (Stuart_Mentzer@objexx.com)
Note:
  • Object (O) parameter: The type of object being keyed
  • Super (S) parameter: The super Key class (== or derived from Key)
  • Client (C) parameter: The client (user) of these keys
  • There is a distinct Key type for each Object+Super+Client combination
  • Hidden index can be set at construction if needed
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines