Rosetta  2019.07
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Private Attributes | Friends | List of all members
utility::keys::Key4Vector< K > Class Template Reference

4-key meta-key More...

#include <Key4Vector.hh>

Public Types

typedefKey
 

Public Member Functions

 Key4Vector ()=default
 Default constructor. More...
 
 Key4Vector (Key const &key1_a, Key const &key2_a, Key const &key3_a, Key const &key4_a)
 Key constructor. More...
 
 ~Key4Vector ()=default
 Destructor. More...
 
Key const & key1 () const
 Key 1. More...
 
Keykey1 ()
 Key 1. More...
 
Key const & key2 () const
 Key 2. More...
 
Keykey2 ()
 Key 2. More...
 
Key const & key3 () const
 Key 3. More...
 
Keykey3 ()
 Key 3. More...
 
Key const & key4 () const
 Key 4. More...
 
Keykey4 ()
 Key 4. More...
 
Key const & operator[] (int const i) const
 Key4Vector[ i ] const: 0-based index. More...
 
Keyoperator[] (int const i)
 Key4Vector[ i ]: 0-based index. More...
 
Key const & operator() (int const i) const
 Key4Vector( i ) const: 1-based index. More...
 
Keyoperator() (int const i)
 Key4Vector( i ): 1-based index. More...
 

Private Attributes

Key key1_
 Keys. More...
 
Key key2_
 
Key key3_
 
Key key4_
 

Friends

bool operator== (Key4Vector const &a, Key4Vector const &b)
 Key4Vector == Key4Vector. More...
 
bool operator!= (Key4Vector const &a, Key4Vector const &b)
 Key4Vector != Key4Vector. More...
 
bool operator< (Key4Vector const &a, Key4Vector const &b)
 Key4Vector < Key4Vector. More...
 

Detailed Description

template<typename K>
class utility::keys::Key4Vector< K >

4-key meta-key

Member Typedef Documentation

template<typename K >
typedef K utility::keys::Key4Vector< K >::Key

Constructor & Destructor Documentation

template<typename K >
utility::keys::Key4Vector< K >::Key4Vector ( )
inlinedefault

Default constructor.

Note
Only works if Key has default constructor
template<typename K >
utility::keys::Key4Vector< K >::Key4Vector ( Key const &  key1_a,
Key const &  key2_a,
Key const &  key3_a,
Key const &  key4_a 
)
inline

Key constructor.

template<typename K >
utility::keys::Key4Vector< K >::~Key4Vector ( )
inlinedefault

Destructor.

Member Function Documentation

template<typename K >
Key const& utility::keys::Key4Vector< K >::key1 ( ) const
inline
template<typename K >
Key& utility::keys::Key4Vector< K >::key1 ( )
inline
template<typename K >
Key const& utility::keys::Key4Vector< K >::key2 ( ) const
inline
template<typename K >
Key& utility::keys::Key4Vector< K >::key2 ( )
inline
template<typename K >
Key const& utility::keys::Key4Vector< K >::key3 ( ) const
inline
template<typename K >
Key& utility::keys::Key4Vector< K >::key3 ( )
inline
template<typename K >
Key const& utility::keys::Key4Vector< K >::key4 ( ) const
inline
template<typename K >
Key& utility::keys::Key4Vector< K >::key4 ( )
inline
template<typename K >
Key const& utility::keys::Key4Vector< K >::operator() ( int const  i) const
inline
template<typename K >
Key& utility::keys::Key4Vector< K >::operator() ( int const  i)
inline
template<typename K >
Key const& utility::keys::Key4Vector< K >::operator[] ( int const  i) const
inline
template<typename K >
Key& utility::keys::Key4Vector< K >::operator[] ( int const  i)
inline

Friends And Related Function Documentation

template<typename K >
bool operator!= ( Key4Vector< K > const &  a,
Key4Vector< K > const &  b 
)
friend
template<typename K >
bool operator< ( Key4Vector< K > const &  a,
Key4Vector< K > const &  b 
)
friend

Key4Vector < Key4Vector.

Note
Lexicographic (full) ordering => Key4Vector is suitable for use as a map key or set element
template<typename K >
bool operator== ( Key4Vector< K > const &  a,
Key4Vector< K > const &  b 
)
friend

Member Data Documentation

template<typename K >
Key utility::keys::Key4Vector< K >::key1_
private
template<typename K >
Key utility::keys::Key4Vector< K >::key2_
private
template<typename K >
Key utility::keys::Key4Vector< K >::key3_
private
template<typename K >
Key utility::keys::Key4Vector< K >::key4_
private

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