Synopsis

namespace std {
class slice;
class gslice;

        // TEMPLATE CLASSES
template<class T>
    class valarray;
template<class T>
    class slice_array;
template<class T>
    class gslice_array;
template<class T>
    class mask_array;
template<class T>
    class indirect_array;

        // TEMPLATE FUNCTIONS
template<class T>
    valarray<T> operator*(const valarray<T>& x,
        const valarray<T>& y);
template<class T>
    valarray<T> operator*(const valarray<T> x,
        const T& y);
template<class T>
    valarray<T> operator*(const T& x,
        const valarray<T>& y);
template<class T>
    valarray<T> operator/(const valarray<T>& x,
        const valarray<T>& y);
template<class T>
    valarray<T> operator/(const valarray<T> x,
        const T& y);
template<class T>
    valarray<T> operator/(const T& x,
        const valarray<T>& y);
template<class T>
    valarray<T> operator%(const valarray<T>& x,
        const vararray<T>& y);
template<class T>
    valarray<T> operator%(const valarray<T> x,
        const T& y);
template<class T>
    valarray<T> operator%(const T& x,
        const valarray<T>& y);
template<class T>
    valarray<T> operator+(const valarray<T>& x,
        const valarray<T>& y);
template<class T>
    valarray<T> operator+(const valarray<T> x,
        const T& y);
template<class T>
    valarray<T> operator+(const T& x,
        const valarray<T>& y);
template<class T>
    valarray<T> operator-(const valarray<T>& x,
        const valarray<T>& y);
template<class T>
    valarray<T> operator-(const valarray<T> x,
        const T& y);
template<class T>
    valarray<T> operator-(const T& x,
        const valarray<T>& y);
template<class T>
    valarray<T> operator^(const valarray<T>& x,
        const valarray<T>& y);
template<class T>
    valarray<T> operator^(const valarray<T> x,
        const T& y);
template<class T>
    valarray<T> operator^(const T& x,
        const valarray<T>& y);
template<class T>
    valarray<T> operator&(const valarray<T>& x,
        const valarray<T>& y);
template<class T>
    valarray<T> operator&(const valarray<T> x,
        const T& y);
template<class T>
    valarray<T> operator&(const T& x,
        const valarray<T>& y);
template<class T>
    valarray<T> operator|(const valarray<T>& x,
        const valarray<T>& y);
template<class T>
    valarray<T> operator|(const valarray<T> x,
        const T& y);
template<class T>
    valarray<T> operator|(const T& x,
        const valarray<T>& y);
template<class T>
    valarray<T> operator<<(const valarray<T>& x,
        const valarray<T>& y);
template<class T>
    valarray<T> operator<<(const valarray<T> x,
        const T& y);
template<class T>
    valarray<T> operator<<(const T& x,
        const valarray<T>& y);
template<class T>
    valarray<T> operator>>(const valarray<T>& x,
        const valarray<T>& y);
template<class T>
    valarray<T> operator>>(const valarray<T> x,
        const T& y);
template<class T>
    valarray<T> operator>>(const T& x,
        const valarray<T>& y);
template<class T>
    valarray<bool> operator&&(const valarray<T>& x,
        const valarray<T>& y);
template<class T>
    valarray<bool> operator&&(const valarray<T> x,
        const T& y);
template<class T>
    valarray<bool> operator&&(const T& x,
        const valarray<T>& y);
template<class T>
    valarray<bool> operator||(const valarray<T>& x,
        const valarray<T>& y);
template<class T>
    valarray<bool> operator||(const valarray<T> x,
        const T& y);
template<class T>
    valarray<bool> operator||(const T& x,
        const valarray<T>& y);
template<class T>
    valarray<bool> operator==(const valarray<T>& x,
        const valarray<T>& y);
template<class T>
    valarray<bool> operator==(const valarray<T> x,
        const T& y);
template<class T>
    valarray<bool> operator==(const T& x,
        const valarray<T>& y);
template<class T>
    valarray<bool> operator!=(const valarray<T>& x,
        const valarray<T>& y);
template<class T>
    valarray<bool> operator!=(const valarray<T> x,
        const T& y);
template<class T>
    valarray<bool> operator!=(const T& x,
        const valarray<T>& y);
template<class T>
    valarray<bool> operator<(const valarray<T>& x,
        const valarray<T>& y);
template<class T>
    valarray<bool> operator<(const valarray<T> x,
        const T& y);
template<class T>
    valarray<bool> operator<(const T& x,
        const valarray<T>& y);
template<class T>
    valarray<bool> operator>=(const valarray<T>& x,
        const valarray<T>& y);
template<class T>
    valarray<bool> operator>=(const valarray<T> x,
        const T& y);
template<class T>
    valarray<bool> operator>=(const T& x,
        const valarray<T>& y);
template<class T>
    valarray<bool> operator>(const valarray<T>& x,
        const valarray<T>& y);
template<class T>
    valarray<bool> operator>(const valarray<T> x,
        const T& y);
template<class T>
    valarray<bool> operator>(const T& x,
        const valarray<T>& y);
template<class T>
    valarray<bool> operator<=(const valarray<T>& x,
        const valarray<T>& y);
template<class T>
    valarray<bool> operator<=(const valarray<T> x,
        const T& y);
template<class T>
    valarray<bool> operator<=(const T& x,
        const valarray<T>& y);
template<class T>
    valarray<T> abs(const valarray<T>& x);
template<class T>
    valarray<T> acos(const valarray<T>& x);
template<class T>
    valarray<T> asin(const valarray<T>& x);
template<class T>
    valarray<T> atan(const valarray<T>& x);
template<class T>
    valarray<T> atan2(const valarray<T>& x,
        const valarray<T>& y);
template<class T>
    valarray<T> atan2(const valarray<T> x, const T& y);
template<class T>
    valarray<T> atan2(const T& x, const valarray<T>& y);
template<class T>
    valarray<T> cos(const valarray<T>& x);
template<class T>
    valarray<T> cosh(const valarray<T>& x);
template<class T>
    valarray<T> exp(const valarray<T>& x);
template<class T>
    valarray<T> log(const valarray<T>& x);
template<class T>
    valarray&tt;T> log10(const valarray<T>& x);
template<class T>
    valarray<T> pow(const valarray<T>& x,
        const valarray<T>& y);
template<class T>
    valarray<T> pow(const valarray<T> x, const T& y);
template<class T>
    valarray<T> pow(const T& x, const valarray<T>& y);
template<class T>
    valarray<T> sin(const valarray<T>& x);
template<class T>
    valarray<T> sinh(const valarray<T>& x);
template<class T>
    valarray<T> sqrt(const valarray<T>& x);
template<class T>
    valarray<T> tan(const valarray<T>& x);
template<class T>
    valarray<T> tanh(const valarray<T>& x);
    }