Rosetta
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

typedef K Key
 

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

◆ Key

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

Constructor & Destructor Documentation

◆ Key4Vector() [1/2]

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

Default constructor.

Note
Only works if Key has default constructor

◆ Key4Vector() [2/2]

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.

◆ ~Key4Vector()

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

Destructor.

Member Function Documentation

◆ key1() [1/2]

template<typename K >
Key& utility::keys::Key4Vector< K >::key1 ( )
inline

◆ key1() [2/2]

template<typename K >
Key const& utility::keys::Key4Vector< K >::key1 ( ) const
inline

◆ key2() [1/2]

template<typename K >
Key& utility::keys::Key4Vector< K >::key2 ( )
inline

◆ key2() [2/2]

template<typename K >
Key const& utility::keys::Key4Vector< K >::key2 ( ) const
inline

◆ key3() [1/2]

template<typename K >
Key& utility::keys::Key4Vector< K >::key3 ( )
inline

◆ key3() [2/2]

template<typename K >
Key const& utility::keys::Key4Vector< K >::key3 ( ) const
inline

◆ key4() [1/2]

template<typename K >
Key& utility::keys::Key4Vector< K >::key4 ( )
inline

◆ key4() [2/2]

template<typename K >
Key const& utility::keys::Key4Vector< K >::key4 ( ) const
inline

◆ operator()() [1/2]

template<typename K >
Key& utility::keys::Key4Vector< K >::operator() ( int const  i)
inline

◆ operator()() [2/2]

template<typename K >
Key const& utility::keys::Key4Vector< K >::operator() ( int const  i) const
inline

◆ operator[]() [1/2]

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

◆ operator[]() [2/2]

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

Friends And Related Function Documentation

◆ operator!=

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

◆ operator<

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

◆ operator==

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

Member Data Documentation

◆ key1_

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

◆ key2_

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

◆ key3_

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

◆ key4_

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

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