GiNaC
1.8.0
|
Utilities for summing over multiple indices. More...
#include <cstddef>
#include <vector>
#include <ostream>
#include <iterator>
Go to the source code of this file.
Classes | |
class | GiNaC::has_distance< T > |
SFINAE test for distance. More... | |
class | GiNaC::basic_multi_iterator< T > |
basic_multi_iterator is a base class. More... | |
class | GiNaC::multi_iterator_ordered< T > |
The class multi_iterator_ordered defines a multi_iterator ![]()
and
It is assumed that | |
class | GiNaC::multi_iterator_ordered_eq< T > |
The class multi_iterator_ordered_eq defines a multi_iterator ![]()
and
It is assumed that | |
class | GiNaC::multi_iterator_ordered_eq_indv< T > |
The class multi_iterator_ordered_eq_indv defines a multi_iterator ![]()
and
. More... | |
class | GiNaC::multi_iterator_counter< T > |
The class multi_iterator_counter defines a multi_iterator ![]()
. More... | |
class | GiNaC::multi_iterator_counter_indv< T > |
The class multi_iterator_counter_indv defines a multi_iterator ![]()
. More... | |
class | GiNaC::multi_iterator_permutation< T > |
The class multi_iterator_permutation defines a multi_iterator ![]()
and
In particular, if | |
class | GiNaC::multi_iterator_shuffle< T > |
The class multi_iterator_shuffle defines a multi_iterator, which runs over all shuffles of a and b. More... | |
class | GiNaC::multi_iterator_shuffle_prime< T > |
The class multi_iterator_shuffle_prime defines a multi_iterator, which runs over all shuffles of a and b, excluding the first one (a,b). More... | |
Namespaces | |
GiNaC | |
Functions | |
template<typename T > | |
std::enable_if< has_distance< T >::value, typename std::iterator_traits< T >::difference_type >::type | GiNaC::format_index_value (const T &a, const T &b) |
For printing a multi-index: If the templates are used, where T is an iterator, printing the address where the iterator points to is not meaningful. More... | |
template<typename T > | |
std::enable_if<!has_distance< T >::value, T >::type | GiNaC::format_index_value (const T &a, const T &b) |
For all other cases we simply print the value. More... | |
template<class T > | |
std::ostream & | GiNaC::operator<< (std::ostream &os, const basic_multi_iterator< T > &v) |
Output operator. More... | |
template<class T > | |
std::ostream & | GiNaC::operator<< (std::ostream &os, const multi_iterator_ordered< T > &v) |
Output operator. More... | |
template<class T > | |
std::ostream & | GiNaC::operator<< (std::ostream &os, const multi_iterator_ordered_eq< T > &v) |
Output operator. More... | |
template<class T > | |
std::ostream & | GiNaC::operator<< (std::ostream &os, const multi_iterator_ordered_eq_indv< T > &v) |
Output operator. More... | |
template<class T > | |
std::ostream & | GiNaC::operator<< (std::ostream &os, const multi_iterator_counter< T > &v) |
Output operator. More... | |
template<class T > | |
std::ostream & | GiNaC::operator<< (std::ostream &os, const multi_iterator_counter_indv< T > &v) |
Output operator. More... | |
template<class T > | |
std::ostream & | GiNaC::operator<< (std::ostream &os, const multi_iterator_permutation< T > &v) |
Output operator. More... | |
template<class T > | |
std::ostream & | GiNaC::operator<< (std::ostream &os, const multi_iterator_shuffle< T > &v) |
Output operator. More... | |
template<class T > | |
std::ostream & | GiNaC::operator<< (std::ostream &os, const multi_iterator_shuffle_prime< T > &v) |
Output operator. More... | |
Utilities for summing over multiple indices.
Definition in file utils_multi_iterator.h.