Lolly 1.4.27
Loading...
Searching...
No Matches
Classes | Functions
ntuple.hpp File Reference
#include "basic.hpp"
Include dependency graph for ntuple.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  pair< T1, T2 >
 
class  triple< T1, T2, T3 >
 
class  quartet< T1, T2, T3, T4 >
 
class  quintuple< T1, T2, T3, T4, T5 >
 
class  sextuple< T1, T2, T3, T4, T5, T6 >
 

Functions

template<class T1 , class T2 >
int hash (const pair< T1, T2 > &p)
 
template<class T1 , class T2 >
tm_ostreamoperator<< (tm_ostream &out, const pair< T1, T2 > &p)
 
template<class T1 , class T2 , class T3 >
int hash (const triple< T1, T2, T3 > &t)
 
template<class T1 , class T2 , class T3 >
tm_ostreamoperator<< (tm_ostream &out, const triple< T1, T2, T3 > &t)
 
template<class T1 , class T2 , class T3 , class T4 >
int hash (const quartet< T1, T2, T3, T4 > &q)
 
template<class T1 , class T2 , class T3 , class T4 >
tm_ostreamoperator<< (tm_ostream &out, const quartet< T1, T2, T3, T4 > &q)
 
template<class T1 , class T2 , class T3 , class T4 , class T5 >
int hash (const quintuple< T1, T2, T3, T4, T5 > &q)
 
template<class T1 , class T2 , class T3 , class T4 , class T5 >
tm_ostreamoperator<< (tm_ostream &out, const quintuple< T1, T2, T3, T4, T5 > &q)
 
template<class T1 , class T2 , class T3 , class T4 , class T5 , class T6 >
int hash (const sextuple< T1, T2, T3, T4, T5, T6 > &s)
 
template<class T1 , class T2 , class T3 , class T4 , class T5 , class T6 >
tm_ostreamoperator<< (tm_ostream &out, const sextuple< T1, T2, T3, T4, T5, T6 > &s)
 

Function Documentation

◆ hash() [1/5]

template<class T1 , class T2 >
int hash ( const pair< T1, T2 > & p)

Definition at line 33 of file ntuple.hpp.

33 {
34 int h1= hash (p.x1);
35 return (h1 << 11) ^ (h1 >> 21) ^ hash (p.x2);
36}
The list class represents a linked list.
Definition list.hpp:48
int hash(const pair< T1, T2 > &p)
Definition ntuple.hpp:33

◆ operator<<() [1/5]

template<class T1 , class T2 >
tm_ostream & operator<< ( tm_ostream & out,
const pair< T1, T2 > & p )
inline

Definition at line 39 of file ntuple.hpp.

40 {
41 return out << "[ " << p.x1 << ", " << p.x2 << " ]";
42}

◆ hash() [2/5]

template<class T1 , class T2 , class T3 >
int hash ( const triple< T1, T2, T3 > & t)

Definition at line 68 of file ntuple.hpp.

68 {
69 int h= hash (t.x1);
70 h = (h << 11) ^ (h >> 21) ^ hash (t.x2);
71 return (h << 11) ^ (h >> 21) ^ hash (t.x3);
72}
blackbox t[13]

◆ operator<<() [2/5]

template<class T1 , class T2 , class T3 >
tm_ostream & operator<< ( tm_ostream & out,
const triple< T1, T2, T3 > & t )
inline

Definition at line 75 of file ntuple.hpp.

76 {
77 return out << "[ " << t.x1 << ", " << t.x2 << ", " << t.x3 << " ]";
78}

◆ hash() [3/5]

template<class T1 , class T2 , class T3 , class T4 >
int hash ( const quartet< T1, T2, T3, T4 > & q)

Definition at line 107 of file ntuple.hpp.

107 {
108 int h= hash (q.x1);
109 h = (h << 11) ^ (h >> 21) ^ hash (q.x2);
110 h = (h << 11) ^ (h >> 21) ^ hash (q.x3);
111 return (h << 11) ^ (h >> 21) ^ hash (q.x4);
112}

◆ operator<<() [3/5]

template<class T1 , class T2 , class T3 , class T4 >
tm_ostream & operator<< ( tm_ostream & out,
const quartet< T1, T2, T3, T4 > & q )
inline

Definition at line 115 of file ntuple.hpp.

116 {
117 return out << "[ " << q.x1 << ", " << q.x2 << ", " << q.x3 << ", " << q.x4
118 << " ]";
119}

◆ hash() [4/5]

template<class T1 , class T2 , class T3 , class T4 , class T5 >
int hash ( const quintuple< T1, T2, T3, T4, T5 > & q)

Definition at line 151 of file ntuple.hpp.

151 {
152 int h= hash (q.x1);
153 h = (h << 11) ^ (h >> 21) ^ hash (q.x2);
154 h = (h << 11) ^ (h >> 21) ^ hash (q.x3);
155 h = (h << 11) ^ (h >> 21) ^ hash (q.x4);
156 return (h << 11) ^ (h >> 21) ^ hash (q.x5);
157}

◆ operator<<() [4/5]

template<class T1 , class T2 , class T3 , class T4 , class T5 >
tm_ostream & operator<< ( tm_ostream & out,
const quintuple< T1, T2, T3, T4, T5 > & q )
inline

Definition at line 160 of file ntuple.hpp.

161 {
162 return out << "[ " << q.x1 << ", " << q.x2 << ", " << q.x3 << ", " << q.x4
163 << ", " << q.x5 << " ]";
164}

◆ hash() [5/5]

template<class T1 , class T2 , class T3 , class T4 , class T5 , class T6 >
int hash ( const sextuple< T1, T2, T3, T4, T5, T6 > & s)

Definition at line 201 of file ntuple.hpp.

201 {
202 int h= hash (s.x1);
203 h = (h << 11) ^ (h >> 21) ^ hash (s.x2);
204 h = (h << 11) ^ (h >> 21) ^ hash (s.x3);
205 h = (h << 11) ^ (h >> 21) ^ hash (s.x4);
206 h = (h << 11) ^ (h >> 21) ^ hash (s.x5);
207 return (h << 11) ^ (h >> 21) ^ hash (s.x6);
208}

◆ operator<<() [5/5]

template<class T1 , class T2 , class T3 , class T4 , class T5 , class T6 >
tm_ostream & operator<< ( tm_ostream & out,
const sextuple< T1, T2, T3, T4, T5, T6 > & s )
inline

Definition at line 211 of file ntuple.hpp.

212 {
213 return out << "[ " << s.x1 << ", " << s.x2 << ", " << s.x3 << ", " << s.x4
214 << ", " << s.x5 << ", " << s.x6 << " ]";
215}