Algorithms Library Toolkit
A toolkit for algorithms, especially for algorithms on formal languages
Data Structures | Namespaces | Functions
vector.hpp File Reference
#include <vector>
#include <iostream>
#include <ext/ostream>
#include <extensions/range.hpp>
Include dependency graph for vector.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

class  ext::vector< T, Alloc >
 Class extending the vector class from the standard library. Original reason is to allow printing of the container with overloaded operator <<. More...
 

Namespaces

namespace  ext
 

Functions

template<class T , class ... Ts>
ext::ostreamext::operator<< (ext::ostream &out, const ext::vector< T, Ts ... > &vector)
 Operator to print the vector to the output stream. More...
 
template<class ... Ts>
ext::vector< bool, Ts ... > & ext::operator|= (ext::vector< bool, Ts ... > &A, const ext::vector< bool, Ts ... > &B)
 Support for assigning or operator. More...
 
template<class ... Ts>
ext::vector< bool, Ts ... > ext::operator| (ext::vector< bool, Ts ... > A, const ext::vector< bool, Ts ... > &B)
 Support for or operator. More...
 
template<class ... Ts>
ext::vector< bool, Ts ... > & ext::operator&= (ext::vector< bool, Ts ... > &A, const ext::vector< bool, Ts ... > &B)
 Support for assigning and operator. More...
 
template<class ... Ts>
ext::vector< bool, Ts ... > ext::operator& (ext::vector< bool, Ts ... > A, const ext::vector< bool, Ts ... > &B)
 Support for and operator. More...
 
template<class ... Ts>
ext::vector< bool, Ts ... > & ext::operator^= (ext::vector< bool, Ts ... > &A, const ext::vector< bool, Ts ... > &B)
 Support for assigning xor operator. More...
 
template<class ... Ts>
ext::vector< bool, Ts ... > ext::operator^ (ext::vector< bool, Ts ... > A, const ext::vector< bool, Ts ... > &B)
 Support for xor operator. More...
 
template<class ... Ts>
ext::vector< bool, Ts ... > ext::operator~ (ext::vector< bool, Ts ... > A)
 Support for not operator. More...
 
template<class ... Ts>
ext::vector< bool, Ts ... > & ext::operator<<= (ext::vector< bool, Ts ... > &A, size_t dist)
 Support for assigning bit shift to the left operator. The operator is intended to look at the vector of booleans as on the number where lower indexes represent less significant bits and higher indexes represent more significant bits. Therefore the shift is moving values on lower indexes to higher indexes. The size of the vector is unchanged. More...
 
template<class ... Ts>
ext::vector< bool, Ts ... > ext::operator<< (ext::vector< bool, Ts ... > A, size_t dist)
 Support for bit shift to the left operator. The operator is intended to look at the vector of booleans as on the number where lower indexes represent less significant bits and higher indexes represent more significant bits. Therefore the shift is moving values on lower indexes to higher indexes. The size of the vector is unchanged. More...
 
template<class ... Ts>
ext::vector< bool, Ts ... > & ext::operator>>= (ext::vector< bool, Ts ... > &A, size_t dist)
 Support for assigning bit shift to the right operator. The operator is intended to look at the vector of booleans as on the number where lower indexes represent less significant bits and higher indexes represent more significant bits. Therefore the shift is moving values on higher indexes to lower indexes. The size of the vector is unchanged. More...
 
template<class ... Ts>
ext::vector< bool, Ts ... > ext::operator>> (ext::vector< bool, Ts ... > A, size_t dist)
 Support for bit shift to the right operator. The operator is intended to look at the vector of booleans as on the number where lower indexes represent less significant bits and higher indexes represent more significant bits. Therefore the shift is moving values on higher indexes to lower indexes. The size of the vector is unchanged. More...
 
template<class ... Ts>
bool ext::any (const ext::vector< bool, Ts ... > &v)
 Tests the vector of booleans whether at least one bit inside is set. More...
 
template<class ... Ts>
void ext::fill (ext::vector< bool, Ts ... > &v)
 Sets all bits in the vector of booleans. More...
 
template<class ... Ts>
void ext::clear (ext::vector< bool, Ts ... > &v)
 Clears all bits in the vector of booleans. More...