Lines Matching refs:_Expr

919     template <class _Expr>
922 __is_val_expr<_Expr>::value,
926 operator*= (const _Expr& __v);
928 template <class _Expr>
931 __is_val_expr<_Expr>::value,
935 operator/= (const _Expr& __v);
937 template <class _Expr>
940 __is_val_expr<_Expr>::value,
944 operator%= (const _Expr& __v);
946 template <class _Expr>
949 __is_val_expr<_Expr>::value,
953 operator+= (const _Expr& __v);
955 template <class _Expr>
958 __is_val_expr<_Expr>::value,
962 operator-= (const _Expr& __v);
964 template <class _Expr>
967 __is_val_expr<_Expr>::value,
971 operator^= (const _Expr& __v);
973 template <class _Expr>
976 __is_val_expr<_Expr>::value,
980 operator|= (const _Expr& __v);
982 template <class _Expr>
985 __is_val_expr<_Expr>::value,
989 operator&= (const _Expr& __v);
991 template <class _Expr>
994 __is_val_expr<_Expr>::value,
998 operator<<= (const _Expr& __v);
1000 template <class _Expr>
1003 __is_val_expr<_Expr>::value,
1007 operator>>= (const _Expr& __v);
1160 template <class _Expr>
1163 __is_val_expr<_Expr>::value,
1167 operator=(const _Expr& __v) const;
1169 template <class _Expr>
1172 __is_val_expr<_Expr>::value,
1176 operator*=(const _Expr& __v) const;
1178 template <class _Expr>
1181 __is_val_expr<_Expr>::value,
1185 operator/=(const _Expr& __v) const;
1187 template <class _Expr>
1190 __is_val_expr<_Expr>::value,
1194 operator%=(const _Expr& __v) const;
1196 template <class _Expr>
1199 __is_val_expr<_Expr>::value,
1203 operator+=(const _Expr& __v) const;
1205 template <class _Expr>
1208 __is_val_expr<_Expr>::value,
1212 operator-=(const _Expr& __v) const;
1214 template <class _Expr>
1217 __is_val_expr<_Expr>::value,
1221 operator^=(const _Expr& __v) const;
1223 template <class _Expr>
1226 __is_val_expr<_Expr>::value,
1230 operator&=(const _Expr& __v) const;
1232 template <class _Expr>
1235 __is_val_expr<_Expr>::value,
1239 operator|=(const _Expr& __v) const;
1241 template <class _Expr>
1244 __is_val_expr<_Expr>::value,
1248 operator<<=(const _Expr& __v) const;
1250 template <class _Expr>
1253 __is_val_expr<_Expr>::value,
1257 operator>>=(const _Expr& __v) const;
1290 template <class _Expr>
1294 __is_val_expr<_Expr>::value,
1297 slice_array<_Tp>::operator=(const _Expr& __v) const
1305 template <class _Expr>
1309 __is_val_expr<_Expr>::value,
1312 slice_array<_Tp>::operator*=(const _Expr& __v) const
1320 template <class _Expr>
1324 __is_val_expr<_Expr>::value,
1327 slice_array<_Tp>::operator/=(const _Expr& __v) const
1335 template <class _Expr>
1339 __is_val_expr<_Expr>::value,
1342 slice_array<_Tp>::operator%=(const _Expr& __v) const
1350 template <class _Expr>
1354 __is_val_expr<_Expr>::value,
1357 slice_array<_Tp>::operator+=(const _Expr& __v) const
1365 template <class _Expr>
1369 __is_val_expr<_Expr>::value,
1372 slice_array<_Tp>::operator-=(const _Expr& __v) const
1380 template <class _Expr>
1384 __is_val_expr<_Expr>::value,
1387 slice_array<_Tp>::operator^=(const _Expr& __v) const
1395 template <class _Expr>
1399 __is_val_expr<_Expr>::value,
1402 slice_array<_Tp>::operator&=(const _Expr& __v) const
1410 template <class _Expr>
1414 __is_val_expr<_Expr>::value,
1417 slice_array<_Tp>::operator|=(const _Expr& __v) const
1425 template <class _Expr>
1429 __is_val_expr<_Expr>::value,
1432 slice_array<_Tp>::operator<<=(const _Expr& __v) const
1440 template <class _Expr>
1444 __is_val_expr<_Expr>::value,
1447 slice_array<_Tp>::operator>>=(const _Expr& __v) const
1543 template <class _Expr>
1546 __is_val_expr<_Expr>::value,
1550 operator=(const _Expr& __v) const;
1552 template <class _Expr>
1555 __is_val_expr<_Expr>::value,
1559 operator*=(const _Expr& __v) const;
1561 template <class _Expr>
1564 __is_val_expr<_Expr>::value,
1568 operator/=(const _Expr& __v) const;
1570 template <class _Expr>
1573 __is_val_expr<_Expr>::value,
1577 operator%=(const _Expr& __v) const;
1579 template <class _Expr>
1582 __is_val_expr<_Expr>::value,
1586 operator+=(const _Expr& __v) const;
1588 template <class _Expr>
1591 __is_val_expr<_Expr>::value,
1595 operator-=(const _Expr& __v) const;
1597 template <class _Expr>
1600 __is_val_expr<_Expr>::value,
1604 operator^=(const _Expr& __v) const;
1606 template <class _Expr>
1609 __is_val_expr<_Expr>::value,
1613 operator&=(const _Expr& __v) const;
1615 template <class _Expr>
1618 __is_val_expr<_Expr>::value,
1622 operator|=(const _Expr& __v) const;
1624 template <class _Expr>
1627 __is_val_expr<_Expr>::value,
1631 operator<<=(const _Expr& __v) const;
1633 template <class _Expr>
1636 __is_val_expr<_Expr>::value,
1640 operator>>=(const _Expr& __v) const;
1670 template <class _Expr>
1674 __is_val_expr<_Expr>::value,
1677 gslice_array<_Tp>::operator=(const _Expr& __v) const
1686 template <class _Expr>
1690 __is_val_expr<_Expr>::value,
1693 gslice_array<_Tp>::operator*=(const _Expr& __v) const
1702 template <class _Expr>
1706 __is_val_expr<_Expr>::value,
1709 gslice_array<_Tp>::operator/=(const _Expr& __v) const
1718 template <class _Expr>
1722 __is_val_expr<_Expr>::value,
1725 gslice_array<_Tp>::operator%=(const _Expr& __v) const
1734 template <class _Expr>
1738 __is_val_expr<_Expr>::value,
1741 gslice_array<_Tp>::operator+=(const _Expr& __v) const
1750 template <class _Expr>
1754 __is_val_expr<_Expr>::value,
1757 gslice_array<_Tp>::operator-=(const _Expr& __v) const
1766 template <class _Expr>
1770 __is_val_expr<_Expr>::value,
1773 gslice_array<_Tp>::operator^=(const _Expr& __v) const
1782 template <class _Expr>
1786 __is_val_expr<_Expr>::value,
1789 gslice_array<_Tp>::operator&=(const _Expr& __v) const
1798 template <class _Expr>
1802 __is_val_expr<_Expr>::value,
1805 gslice_array<_Tp>::operator|=(const _Expr& __v) const
1814 template <class _Expr>
1818 __is_val_expr<_Expr>::value,
1821 gslice_array<_Tp>::operator<<=(const _Expr& __v) const
1830 template <class _Expr>
1834 __is_val_expr<_Expr>::value,
1837 gslice_array<_Tp>::operator>>=(const _Expr& __v) const
1881 template <class _Expr>
1884 __is_val_expr<_Expr>::value,
1888 operator=(const _Expr& __v) const;
1890 template <class _Expr>
1893 __is_val_expr<_Expr>::value,
1897 operator*=(const _Expr& __v) const;
1899 template <class _Expr>
1902 __is_val_expr<_Expr>::value,
1906 operator/=(const _Expr& __v) const;
1908 template <class _Expr>
1911 __is_val_expr<_Expr>::value,
1915 operator%=(const _Expr& __v) const;
1917 template <class _Expr>
1920 __is_val_expr<_Expr>::value,
1924 operator+=(const _Expr& __v) const;
1926 template <class _Expr>
1929 __is_val_expr<_Expr>::value,
1933 operator-=(const _Expr& __v) const;
1935 template <class _Expr>
1938 __is_val_expr<_Expr>::value,
1942 operator^=(const _Expr& __v) const;
1944 template <class _Expr>
1947 __is_val_expr<_Expr>::value,
1951 operator&=(const _Expr& __v) const;
1953 template <class _Expr>
1956 __is_val_expr<_Expr>::value,
1960 operator|=(const _Expr& __v) const;
1962 template <class _Expr>
1965 __is_val_expr<_Expr>::value,
1969 operator<<=(const _Expr& __v) const;
1971 template <class _Expr>
1974 __is_val_expr<_Expr>::value,
1978 operator>>=(const _Expr& __v) const;
2007 template <class _Expr>
2011 __is_val_expr<_Expr>::value,
2014 mask_array<_Tp>::operator=(const _Expr& __v) const
2022 template <class _Expr>
2026 __is_val_expr<_Expr>::value,
2029 mask_array<_Tp>::operator*=(const _Expr& __v) const
2037 template <class _Expr>
2041 __is_val_expr<_Expr>::value,
2044 mask_array<_Tp>::operator/=(const _Expr& __v) const
2052 template <class _Expr>
2056 __is_val_expr<_Expr>::value,
2059 mask_array<_Tp>::operator%=(const _Expr& __v) const
2067 template <class _Expr>
2071 __is_val_expr<_Expr>::value,
2074 mask_array<_Tp>::operator+=(const _Expr& __v) const
2082 template <class _Expr>
2086 __is_val_expr<_Expr>::value,
2089 mask_array<_Tp>::operator-=(const _Expr& __v) const
2097 template <class _Expr>
2101 __is_val_expr<_Expr>::value,
2104 mask_array<_Tp>::operator^=(const _Expr& __v) const
2112 template <class _Expr>
2116 __is_val_expr<_Expr>::value,
2119 mask_array<_Tp>::operator&=(const _Expr& __v) const
2127 template <class _Expr>
2131 __is_val_expr<_Expr>::value,
2134 mask_array<_Tp>::operator|=(const _Expr& __v) const
2142 template <class _Expr>
2146 __is_val_expr<_Expr>::value,
2149 mask_array<_Tp>::operator<<=(const _Expr& __v) const
2157 template <class _Expr>
2161 __is_val_expr<_Expr>::value,
2164 mask_array<_Tp>::operator>>=(const _Expr& __v) const
2239 template <class _Expr>
2242 __is_val_expr<_Expr>::value,
2246 operator=(const _Expr& __v) const;
2248 template <class _Expr>
2251 __is_val_expr<_Expr>::value,
2255 operator*=(const _Expr& __v) const;
2257 template <class _Expr>
2260 __is_val_expr<_Expr>::value,
2264 operator/=(const _Expr& __v) const;
2266 template <class _Expr>
2269 __is_val_expr<_Expr>::value,
2273 operator%=(const _Expr& __v) const;
2275 template <class _Expr>
2278 __is_val_expr<_Expr>::value,
2282 operator+=(const _Expr& __v) const;
2284 template <class _Expr>
2287 __is_val_expr<_Expr>::value,
2291 operator-=(const _Expr& __v) const;
2293 template <class _Expr>
2296 __is_val_expr<_Expr>::value,
2300 operator^=(const _Expr& __v) const;
2302 template <class _Expr>
2305 __is_val_expr<_Expr>::value,
2309 operator&=(const _Expr& __v) const;
2311 template <class _Expr>
2314 __is_val_expr<_Expr>::value,
2318 operator|=(const _Expr& __v) const;
2320 template <class _Expr>
2323 __is_val_expr<_Expr>::value,
2327 operator<<=(const _Expr& __v) const;
2329 template <class _Expr>
2332 __is_val_expr<_Expr>::value,
2336 operator>>=(const _Expr& __v) const;
2370 template <class _Expr>
2374 __is_val_expr<_Expr>::value,
2377 indirect_array<_Tp>::operator=(const _Expr& __v) const
2385 template <class _Expr>
2389 __is_val_expr<_Expr>::value,
2392 indirect_array<_Tp>::operator*=(const _Expr& __v) const
2400 template <class _Expr>
2404 __is_val_expr<_Expr>::value,
2407 indirect_array<_Tp>::operator/=(const _Expr& __v) const
2415 template <class _Expr>
2419 __is_val_expr<_Expr>::value,
2422 indirect_array<_Tp>::operator%=(const _Expr& __v) const
2430 template <class _Expr>
2434 __is_val_expr<_Expr>::value,
2437 indirect_array<_Tp>::operator+=(const _Expr& __v) const
2445 template <class _Expr>
2449 __is_val_expr<_Expr>::value,
2452 indirect_array<_Tp>::operator-=(const _Expr& __v) const
2460 template <class _Expr>
2464 __is_val_expr<_Expr>::value,
2467 indirect_array<_Tp>::operator^=(const _Expr& __v) const
2475 template <class _Expr>
2479 __is_val_expr<_Expr>::value,
2482 indirect_array<_Tp>::operator&=(const _Expr& __v) const
2490 template <class _Expr>
2494 __is_val_expr<_Expr>::value,
2497 indirect_array<_Tp>::operator|=(const _Expr& __v) const
2505 template <class _Expr>
2509 __is_val_expr<_Expr>::value,
2512 indirect_array<_Tp>::operator<<=(const _Expr& __v) const
2520 template <class _Expr>
2524 __is_val_expr<_Expr>::value,
2527 indirect_array<_Tp>::operator>>=(const _Expr& __v) const
3396 template <class _Expr>
3400 __is_val_expr<_Expr>::value,
3403 valarray<_Tp>::operator*=(const _Expr& __v)
3412 template <class _Expr>
3416 __is_val_expr<_Expr>::value,
3419 valarray<_Tp>::operator/=(const _Expr& __v)
3428 template <class _Expr>
3432 __is_val_expr<_Expr>::value,
3435 valarray<_Tp>::operator%=(const _Expr& __v)
3444 template <class _Expr>
3448 __is_val_expr<_Expr>::value,
3451 valarray<_Tp>::operator+=(const _Expr& __v)
3460 template <class _Expr>
3464 __is_val_expr<_Expr>::value,
3467 valarray<_Tp>::operator-=(const _Expr& __v)
3476 template <class _Expr>
3480 __is_val_expr<_Expr>::value,
3483 valarray<_Tp>::operator^=(const _Expr& __v)
3492 template <class _Expr>
3496 __is_val_expr<_Expr>::value,
3499 valarray<_Tp>::operator|=(const _Expr& __v)
3508 template <class _Expr>
3512 __is_val_expr<_Expr>::value,
3515 valarray<_Tp>::operator&=(const _Expr& __v)
3524 template <class _Expr>
3528 __is_val_expr<_Expr>::value,
3531 valarray<_Tp>::operator<<=(const _Expr& __v)
3540 template <class _Expr>
3544 __is_val_expr<_Expr>::value,
3547 valarray<_Tp>::operator>>=(const _Expr& __v)
3744 template<class _Expr>
3748 __is_val_expr<_Expr>::value,
3749 __val_expr<_BinaryOp<multiplies<typename _Expr::value_type>,
3750 _Expr, __scalar_expr<typename _Expr::value_type> > >
3752 operator*(const _Expr& __x, const typename _Expr::value_type& __y)
3754 typedef typename _Expr::value_type value_type;
3755 typedef _BinaryOp<multiplies<value_type>, _Expr, __scalar_expr<value_type> > _Op;
3760 template<class _Expr>
3764 __is_val_expr<_Expr>::value,
3765 __val_expr<_BinaryOp<multiplies<typename _Expr::value_type>,
3766 __scalar_expr<typename _Expr::value_type>, _Expr> >
3768 operator*(const typename _Expr::value_type& __x, const _Expr& __y)
3770 typedef typename _Expr::value_type value_type;
3771 typedef _BinaryOp<multiplies<value_type>, __scalar_expr<value_type>, _Expr> _Op;
3790 template<class _Expr>
3794 __is_val_expr<_Expr>::value,
3795 __val_expr<_BinaryOp<divides<typename _Expr::value_type>,
3796 _Expr, __scalar_expr<typename _Expr::value_type> > >
3798 operator/(const _Expr& __x, const typename _Expr::value_type& __y)
3800 typedef typename _Expr::value_type value_type;
3801 typedef _BinaryOp<divides<value_type>, _Expr, __scalar_expr<value_type> > _Op;
3806 template<class _Expr>
3810 __is_val_expr<_Expr>::value,
3811 __val_expr<_BinaryOp<divides<typename _Expr::value_type>,
3812 __scalar_expr<typename _Expr::value_type>, _Expr> >
3814 operator/(const typename _Expr::value_type& __x, const _Expr& __y)
3816 typedef typename _Expr::value_type value_type;
3817 typedef _BinaryOp<divides<value_type>, __scalar_expr<value_type>, _Expr> _Op;
3836 template<class _Expr>
3840 __is_val_expr<_Expr>::value,
3841 __val_expr<_BinaryOp<modulus<typename _Expr::value_type>,
3842 _Expr, __scalar_expr<typename _Expr::value_type> > >
3844 operator%(const _Expr& __x, const typename _Expr::value_type& __y)
3846 typedef typename _Expr::value_type value_type;
3847 typedef _BinaryOp<modulus<value_type>, _Expr, __scalar_expr<value_type> > _Op;
3852 template<class _Expr>
3856 __is_val_expr<_Expr>::value,
3857 __val_expr<_BinaryOp<modulus<typename _Expr::value_type>,
3858 __scalar_expr<typename _Expr::value_type>, _Expr> >
3860 operator%(const typename _Expr::value_type& __x, const _Expr& __y)
3862 typedef typename _Expr::value_type value_type;
3863 typedef _BinaryOp<modulus<value_type>, __scalar_expr<value_type>, _Expr> _Op;
3882 template<class _Expr>
3886 __is_val_expr<_Expr>::value,
3887 __val_expr<_BinaryOp<plus<typename _Expr::value_type>,
3888 _Expr, __scalar_expr<typename _Expr::value_type> > >
3890 operator+(const _Expr& __x, const typename _Expr::value_type& __y)
3892 typedef typename _Expr::value_type value_type;
3893 typedef _BinaryOp<plus<value_type>, _Expr, __scalar_expr<value_type> > _Op;
3898 template<class _Expr>
3902 __is_val_expr<_Expr>::value,
3903 __val_expr<_BinaryOp<plus<typename _Expr::value_type>,
3904 __scalar_expr<typename _Expr::value_type>, _Expr> >
3906 operator+(const typename _Expr::value_type& __x, const _Expr& __y)
3908 typedef typename _Expr::value_type value_type;
3909 typedef _BinaryOp<plus<value_type>, __scalar_expr<value_type>, _Expr> _Op;
3928 template<class _Expr>
3932 __is_val_expr<_Expr>::value,
3933 __val_expr<_BinaryOp<minus<typename _Expr::value_type>,
3934 _Expr, __scalar_expr<typename _Expr::value_type> > >
3936 operator-(const _Expr& __x, const typename _Expr::value_type& __y)
3938 typedef typename _Expr::value_type value_type;
3939 typedef _BinaryOp<minus<value_type>, _Expr, __scalar_expr<value_type> > _Op;
3944 template<class _Expr>
3948 __is_val_expr<_Expr>::value,
3949 __val_expr<_BinaryOp<minus<typename _Expr::value_type>,
3950 __scalar_expr<typename _Expr::value_type>, _Expr> >
3952 operator-(const typename _Expr::value_type& __x, const _Expr& __y)
3954 typedef typename _Expr::value_type value_type;
3955 typedef _BinaryOp<minus<value_type>, __scalar_expr<value_type>, _Expr> _Op;
3974 template<class _Expr>
3978 __is_val_expr<_Expr>::value,
3979 __val_expr<_BinaryOp<bit_xor<typename _Expr::value_type>,
3980 _Expr, __scalar_expr<typename _Expr::value_type> > >
3982 operator^(const _Expr& __x, const typename _Expr::value_type& __y)
3984 typedef typename _Expr::value_type value_type;
3985 typedef _BinaryOp<bit_xor<value_type>, _Expr, __scalar_expr<value_type> > _Op;
3990 template<class _Expr>
3994 __is_val_expr<_Expr>::value,
3995 __val_expr<_BinaryOp<bit_xor<typename _Expr::value_type>,
3996 __scalar_expr<typename _Expr::value_type>, _Expr> >
3998 operator^(const typename _Expr::value_type& __x, const _Expr& __y)
4000 typedef typename _Expr::value_type value_type;
4001 typedef _BinaryOp<bit_xor<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4020 template<class _Expr>
4024 __is_val_expr<_Expr>::value,
4025 __val_expr<_BinaryOp<bit_and<typename _Expr::value_type>,
4026 _Expr, __scalar_expr<typename _Expr::value_type> > >
4028 operator&(const _Expr& __x, const typename _Expr::value_type& __y)
4030 typedef typename _Expr::value_type value_type;
4031 typedef _BinaryOp<bit_and<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4036 template<class _Expr>
4040 __is_val_expr<_Expr>::value,
4041 __val_expr<_BinaryOp<bit_and<typename _Expr::value_type>,
4042 __scalar_expr<typename _Expr::value_type>, _Expr> >
4044 operator&(const typename _Expr::value_type& __x, const _Expr& __y)
4046 typedef typename _Expr::value_type value_type;
4047 typedef _BinaryOp<bit_and<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4066 template<class _Expr>
4070 __is_val_expr<_Expr>::value,
4071 __val_expr<_BinaryOp<bit_or<typename _Expr::value_type>,
4072 _Expr, __scalar_expr<typename _Expr::value_type> > >
4074 operator|(const _Expr& __x, const typename _Expr::value_type& __y)
4076 typedef typename _Expr::value_type value_type;
4077 typedef _BinaryOp<bit_or<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4082 template<class _Expr>
4086 __is_val_expr<_Expr>::value,
4087 __val_expr<_BinaryOp<bit_or<typename _Expr::value_type>,
4088 __scalar_expr<typename _Expr::value_type>, _Expr> >
4090 operator|(const typename _Expr::value_type& __x, const _Expr& __y)
4092 typedef typename _Expr::value_type value_type;
4093 typedef _BinaryOp<bit_or<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4112 template<class _Expr>
4116 __is_val_expr<_Expr>::value,
4117 __val_expr<_BinaryOp<__bit_shift_left<typename _Expr::value_type>,
4118 _Expr, __scalar_expr<typename _Expr::value_type> > >
4120 operator<<(const _Expr& __x, const typename _Expr::value_type& __y)
4122 typedef typename _Expr::value_type value_type;
4123 typedef _BinaryOp<__bit_shift_left<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4128 template<class _Expr>
4132 __is_val_expr<_Expr>::value,
4133 __val_expr<_BinaryOp<__bit_shift_left<typename _Expr::value_type>,
4134 __scalar_expr<typename _Expr::value_type>, _Expr> >
4136 operator<<(const typename _Expr::value_type& __x, const _Expr& __y)
4138 typedef typename _Expr::value_type value_type;
4139 typedef _BinaryOp<__bit_shift_left<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4158 template<class _Expr>
4162 __is_val_expr<_Expr>::value,
4163 __val_expr<_BinaryOp<__bit_shift_right<typename _Expr::value_type>,
4164 _Expr, __scalar_expr<typename _Expr::value_type> > >
4166 operator>>(const _Expr& __x, const typename _Expr::value_type& __y)
4168 typedef typename _Expr::value_type value_type;
4169 typedef _BinaryOp<__bit_shift_right<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4174 template<class _Expr>
4178 __is_val_expr<_Expr>::value,
4179 __val_expr<_BinaryOp<__bit_shift_right<typename _Expr::value_type>,
4180 __scalar_expr<typename _Expr::value_type>, _Expr> >
4182 operator>>(const typename _Expr::value_type& __x, const _Expr& __y)
4184 typedef typename _Expr::value_type value_type;
4185 typedef _BinaryOp<__bit_shift_right<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4204 template<class _Expr>
4208 __is_val_expr<_Expr>::value,
4209 __val_expr<_BinaryOp<logical_and<typename _Expr::value_type>,
4210 _Expr, __scalar_expr<typename _Expr::value_type> > >
4212 operator&&(const _Expr& __x, const typename _Expr::value_type& __y)
4214 typedef typename _Expr::value_type value_type;
4215 typedef _BinaryOp<logical_and<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4220 template<class _Expr>
4224 __is_val_expr<_Expr>::value,
4225 __val_expr<_BinaryOp<logical_and<typename _Expr::value_type>,
4226 __scalar_expr<typename _Expr::value_type>, _Expr> >
4228 operator&&(const typename _Expr::value_type& __x, const _Expr& __y)
4230 typedef typename _Expr::value_type value_type;
4231 typedef _BinaryOp<logical_and<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4250 template<class _Expr>
4254 __is_val_expr<_Expr>::value,
4255 __val_expr<_BinaryOp<logical_or<typename _Expr::value_type>,
4256 _Expr, __scalar_expr<typename _Expr::value_type> > >
4258 operator||(const _Expr& __x, const typename _Expr::value_type& __y)
4260 typedef typename _Expr::value_type value_type;
4261 typedef _BinaryOp<logical_or<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4266 template<class _Expr>
4270 __is_val_expr<_Expr>::value,
4271 __val_expr<_BinaryOp<logical_or<typename _Expr::value_type>,
4272 __scalar_expr<typename _Expr::value_type>, _Expr> >
4274 operator||(const typename _Expr::value_type& __x, const _Expr& __y)
4276 typedef typename _Expr::value_type value_type;
4277 typedef _BinaryOp<logical_or<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4296 template<class _Expr>
4300 __is_val_expr<_Expr>::value,
4301 __val_expr<_BinaryOp<equal_to<typename _Expr::value_type>,
4302 _Expr, __scalar_expr<typename _Expr::value_type> > >
4304 operator==(const _Expr& __x, const typename _Expr::value_type& __y)
4306 typedef typename _Expr::value_type value_type;
4307 typedef _BinaryOp<equal_to<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4312 template<class _Expr>
4316 __is_val_expr<_Expr>::value,
4317 __val_expr<_BinaryOp<equal_to<typename _Expr::value_type>,
4318 __scalar_expr<typename _Expr::value_type>, _Expr> >
4320 operator==(const typename _Expr::value_type& __x, const _Expr& __y)
4322 typedef typename _Expr::value_type value_type;
4323 typedef _BinaryOp<equal_to<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4342 template<class _Expr>
4346 __is_val_expr<_Expr>::value,
4347 __val_expr<_BinaryOp<not_equal_to<typename _Expr::value_type>,
4348 _Expr, __scalar_expr<typename _Expr::value_type> > >
4350 operator!=(const _Expr& __x, const typename _Expr::value_type& __y)
4352 typedef typename _Expr::value_type value_type;
4353 typedef _BinaryOp<not_equal_to<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4358 template<class _Expr>
4362 __is_val_expr<_Expr>::value,
4363 __val_expr<_BinaryOp<not_equal_to<typename _Expr::value_type>,
4364 __scalar_expr<typename _Expr::value_type>, _Expr> >
4366 operator!=(const typename _Expr::value_type& __x, const _Expr& __y)
4368 typedef typename _Expr::value_type value_type;
4369 typedef _BinaryOp<not_equal_to<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4388 template<class _Expr>
4392 __is_val_expr<_Expr>::value,
4393 __val_expr<_BinaryOp<less<typename _Expr::value_type>,
4394 _Expr, __scalar_expr<typename _Expr::value_type> > >
4396 operator<(const _Expr& __x, const typename _Expr::value_type& __y)
4398 typedef typename _Expr::value_type value_type;
4399 typedef _BinaryOp<less<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4404 template<class _Expr>
4408 __is_val_expr<_Expr>::value,
4409 __val_expr<_BinaryOp<less<typename _Expr::value_type>,
4410 __scalar_expr<typename _Expr::value_type>, _Expr> >
4412 operator<(const typename _Expr::value_type& __x, const _Expr& __y)
4414 typedef typename _Expr::value_type value_type;
4415 typedef _BinaryOp<less<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4434 template<class _Expr>
4438 __is_val_expr<_Expr>::value,
4439 __val_expr<_BinaryOp<greater<typename _Expr::value_type>,
4440 _Expr, __scalar_expr<typename _Expr::value_type> > >
4442 operator>(const _Expr& __x, const typename _Expr::value_type& __y)
4444 typedef typename _Expr::value_type value_type;
4445 typedef _BinaryOp<greater<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4450 template<class _Expr>
4454 __is_val_expr<_Expr>::value,
4455 __val_expr<_BinaryOp<greater<typename _Expr::value_type>,
4456 __scalar_expr<typename _Expr::value_type>, _Expr> >
4458 operator>(const typename _Expr::value_type& __x, const _Expr& __y)
4460 typedef typename _Expr::value_type value_type;
4461 typedef _BinaryOp<greater<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4480 template<class _Expr>
4484 __is_val_expr<_Expr>::value,
4485 __val_expr<_BinaryOp<less_equal<typename _Expr::value_type>,
4486 _Expr, __scalar_expr<typename _Expr::value_type> > >
4488 operator<=(const _Expr& __x, const typename _Expr::value_type& __y)
4490 typedef typename _Expr::value_type value_type;
4491 typedef _BinaryOp<less_equal<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4496 template<class _Expr>
4500 __is_val_expr<_Expr>::value,
4501 __val_expr<_BinaryOp<less_equal<typename _Expr::value_type>,
4502 __scalar_expr<typename _Expr::value_type>, _Expr> >
4504 operator<=(const typename _Expr::value_type& __x, const _Expr& __y)
4506 typedef typename _Expr::value_type value_type;
4507 typedef _BinaryOp<less_equal<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4526 template<class _Expr>
4530 __is_val_expr<_Expr>::value,
4531 __val_expr<_BinaryOp<greater_equal<typename _Expr::value_type>,
4532 _Expr, __scalar_expr<typename _Expr::value_type> > >
4534 operator>=(const _Expr& __x, const typename _Expr::value_type& __y)
4536 typedef typename _Expr::value_type value_type;
4537 typedef _BinaryOp<greater_equal<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4542 template<class _Expr>
4546 __is_val_expr<_Expr>::value,
4547 __val_expr<_BinaryOp<greater_equal<typename _Expr::value_type>,
4548 __scalar_expr<typename _Expr::value_type>, _Expr> >
4550 operator>=(const typename _Expr::value_type& __x, const _Expr& __y)
4552 typedef typename _Expr::value_type value_type;
4553 typedef _BinaryOp<greater_equal<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4558 template<class _Expr>
4562 __is_val_expr<_Expr>::value,
4563 __val_expr<_UnaryOp<__abs_expr<typename _Expr::value_type>, _Expr> >
4565 abs(const _Expr& __x)
4567 typedef typename _Expr::value_type value_type;
4568 typedef _UnaryOp<__abs_expr<value_type>, _Expr> _Op;
4572 template<class _Expr>
4576 __is_val_expr<_Expr>::value,
4577 __val_expr<_UnaryOp<__acos_expr<typename _Expr::value_type>, _Expr> >
4579 acos(const _Expr& __x)
4581 typedef typename _Expr::value_type value_type;
4582 typedef _UnaryOp<__acos_expr<value_type>, _Expr> _Op;
4586 template<class _Expr>
4590 __is_val_expr<_Expr>::value,
4591 __val_expr<_UnaryOp<__asin_expr<typename _Expr::value_type>, _Expr> >
4593 asin(const _Expr& __x)
4595 typedef typename _Expr::value_type value_type;
4596 typedef _UnaryOp<__asin_expr<value_type>, _Expr> _Op;
4600 template<class _Expr>
4604 __is_val_expr<_Expr>::value,
4605 __val_expr<_UnaryOp<__atan_expr<typename _Expr::value_type>, _Expr> >
4607 atan(const _Expr& __x)
4609 typedef typename _Expr::value_type value_type;
4610 typedef _UnaryOp<__atan_expr<value_type>, _Expr> _Op;
4628 template<class _Expr>
4632 __is_val_expr<_Expr>::value,
4633 __val_expr<_BinaryOp<__atan2_expr<typename _Expr::value_type>,
4634 _Expr, __scalar_expr<typename _Expr::value_type> > >
4636 atan2(const _Expr& __x, const typename _Expr::value_type& __y)
4638 typedef typename _Expr::value_type value_type;
4639 typedef _BinaryOp<__atan2_expr<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4644 template<class _Expr>
4648 __is_val_expr<_Expr>::value,
4649 __val_expr<_BinaryOp<__atan2_expr<typename _Expr::value_type>,
4650 __scalar_expr<typename _Expr::value_type>, _Expr> >
4652 atan2(const typename _Expr::value_type& __x, const _Expr& __y)
4654 typedef typename _Expr::value_type value_type;
4655 typedef _BinaryOp<__atan2_expr<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4660 template<class _Expr>
4664 __is_val_expr<_Expr>::value,
4665 __val_expr<_UnaryOp<__cos_expr<typename _Expr::value_type>, _Expr> >
4667 cos(const _Expr& __x)
4669 typedef typename _Expr::value_type value_type;
4670 typedef _UnaryOp<__cos_expr<value_type>, _Expr> _Op;
4674 template<class _Expr>
4678 __is_val_expr<_Expr>::value,
4679 __val_expr<_UnaryOp<__cosh_expr<typename _Expr::value_type>, _Expr> >
4681 cosh(const _Expr& __x)
4683 typedef typename _Expr::value_type value_type;
4684 typedef _UnaryOp<__cosh_expr<value_type>, _Expr> _Op;
4688 template<class _Expr>
4692 __is_val_expr<_Expr>::value,
4693 __val_expr<_UnaryOp<__exp_expr<typename _Expr::value_type>, _Expr> >
4695 exp(const _Expr& __x)
4697 typedef typename _Expr::value_type value_type;
4698 typedef _UnaryOp<__exp_expr<value_type>, _Expr> _Op;
4702 template<class _Expr>
4706 __is_val_expr<_Expr>::value,
4707 __val_expr<_UnaryOp<__log_expr<typename _Expr::value_type>, _Expr> >
4709 log(const _Expr& __x)
4711 typedef typename _Expr::value_type value_type;
4712 typedef _UnaryOp<__log_expr<value_type>, _Expr> _Op;
4716 template<class _Expr>
4720 __is_val_expr<_Expr>::value,
4721 __val_expr<_UnaryOp<__log10_expr<typename _Expr::value_type>, _Expr> >
4723 log10(const _Expr& __x)
4725 typedef typename _Expr::value_type value_type;
4726 typedef _UnaryOp<__log10_expr<value_type>, _Expr> _Op;
4744 template<class _Expr>
4748 __is_val_expr<_Expr>::value,
4749 __val_expr<_BinaryOp<__pow_expr<typename _Expr::value_type>,
4750 _Expr, __scalar_expr<typename _Expr::value_type> > >
4752 pow(const _Expr& __x, const typename _Expr::value_type& __y)
4754 typedef typename _Expr::value_type value_type;
4755 typedef _BinaryOp<__pow_expr<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4760 template<class _Expr>
4764 __is_val_expr<_Expr>::value,
4765 __val_expr<_BinaryOp<__pow_expr<typename _Expr::value_type>,
4766 __scalar_expr<typename _Expr::value_type>, _Expr> >
4768 pow(const typename _Expr::value_type& __x, const _Expr& __y)
4770 typedef typename _Expr::value_type value_type;
4771 typedef _BinaryOp<__pow_expr<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4776 template<class _Expr>
4780 __is_val_expr<_Expr>::value,
4781 __val_expr<_UnaryOp<__sin_expr<typename _Expr::value_type>, _Expr> >
4783 sin(const _Expr& __x)
4785 typedef typename _Expr::value_type value_type;
4786 typedef _UnaryOp<__sin_expr<value_type>, _Expr> _Op;
4790 template<class _Expr>
4794 __is_val_expr<_Expr>::value,
4795 __val_expr<_UnaryOp<__sinh_expr<typename _Expr::value_type>, _Expr> >
4797 sinh(const _Expr& __x)
4799 typedef typename _Expr::value_type value_type;
4800 typedef _UnaryOp<__sinh_expr<value_type>, _Expr> _Op;
4804 template<class _Expr>
4808 __is_val_expr<_Expr>::value,
4809 __val_expr<_UnaryOp<__sqrt_expr<typename _Expr::value_type>, _Expr> >
4811 sqrt(const _Expr& __x)
4813 typedef typename _Expr::value_type value_type;
4814 typedef _UnaryOp<__sqrt_expr<value_type>, _Expr> _Op;
4818 template<class _Expr>
4822 __is_val_expr<_Expr>::value,
4823 __val_expr<_UnaryOp<__tan_expr<typename _Expr::value_type>, _Expr> >
4825 tan(const _Expr& __x)
4827 typedef typename _Expr::value_type value_type;
4828 typedef _UnaryOp<__tan_expr<value_type>, _Expr> _Op;
4832 template<class _Expr>
4836 __is_val_expr<_Expr>::value,
4837 __val_expr<_UnaryOp<__tanh_expr<typename _Expr::value_type>, _Expr> >
4839 tanh(const _Expr& __x)
4841 typedef typename _Expr::value_type value_type;
4842 typedef _UnaryOp<__tanh_expr<value_type>, _Expr> _Op;