|
template<typename O , typename S , typename C > |
bool | utility::keys::operator== (AutoKey< O, S, C > const &a, AutoKey< O, S, C > const &b) |
| AutoKey == AutoKey. More...
|
|
template<typename O , typename S , typename C > |
bool | utility::keys::operator!= (AutoKey< O, S, C > const &a, AutoKey< O, S, C > const &b) |
| AutoKey != AutoKey. More...
|
|
template<typename O , typename S , typename C > |
bool | utility::keys::operator< (AutoKey< O, S, C > const &a, AutoKey< O, S, C > const &b) |
| AutoKey < AutoKey. More...
|
|
template<typename O , typename S , typename C > |
bool | utility::keys::operator<= (AutoKey< O, S, C > const &a, AutoKey< O, S, C > const &b) |
| AutoKey <= AutoKey. More...
|
|
template<typename O , typename S , typename C > |
bool | utility::keys::operator>= (AutoKey< O, S, C > const &a, AutoKey< O, S, C > const &b) |
| AutoKey >= AutoKey. More...
|
|
template<typename O , typename S , typename C > |
bool | utility::keys::operator> (AutoKey< O, S, C > const &a, AutoKey< O, S, C > const &b) |
| AutoKey > AutoKey. More...
|
|
template<typename O , typename S , typename C > |
bool | utility::keys::sequential (AutoKey< O, S, C > const &a, AutoKey< O, S, C > const &b) |
| AutoKeys are sequential? More...
|
|
Automatic hidden index key abstract base class.
- Author
- Stuart G. Mentzer (Stuar.nosp@m.t_Me.nosp@m.ntzer.nosp@m.@obj.nosp@m.exx.c.nosp@m.om)
- 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 is set automatically at construction in the order keys are constructed
- Default-constructed keys are assigned a hidden index of zero: Use indentifier argument(s) when constructing keys meant for collections
- Key-constructed keys copy the index of the source key so they compare as equal
- Can derive privately from an AutoKey to share the index set of another Key type without allowing convertibility (for type safety)
- Designed for collections of keys of a common abstract or concrete Key type