• Home
  • Raw
  • Download

Lines Matching refs:_Expr

918     template <class _Expr>
921 __is_val_expr<_Expr>::value,
925 operator*= (const _Expr& __v);
927 template <class _Expr>
930 __is_val_expr<_Expr>::value,
934 operator/= (const _Expr& __v);
936 template <class _Expr>
939 __is_val_expr<_Expr>::value,
943 operator%= (const _Expr& __v);
945 template <class _Expr>
948 __is_val_expr<_Expr>::value,
952 operator+= (const _Expr& __v);
954 template <class _Expr>
957 __is_val_expr<_Expr>::value,
961 operator-= (const _Expr& __v);
963 template <class _Expr>
966 __is_val_expr<_Expr>::value,
970 operator^= (const _Expr& __v);
972 template <class _Expr>
975 __is_val_expr<_Expr>::value,
979 operator|= (const _Expr& __v);
981 template <class _Expr>
984 __is_val_expr<_Expr>::value,
988 operator&= (const _Expr& __v);
990 template <class _Expr>
993 __is_val_expr<_Expr>::value,
997 operator<<= (const _Expr& __v);
999 template <class _Expr>
1002 __is_val_expr<_Expr>::value,
1006 operator>>= (const _Expr& __v);
1161 template <class _Expr>
1164 __is_val_expr<_Expr>::value,
1168 operator=(const _Expr& __v) const;
1170 template <class _Expr>
1173 __is_val_expr<_Expr>::value,
1177 operator*=(const _Expr& __v) const;
1179 template <class _Expr>
1182 __is_val_expr<_Expr>::value,
1186 operator/=(const _Expr& __v) const;
1188 template <class _Expr>
1191 __is_val_expr<_Expr>::value,
1195 operator%=(const _Expr& __v) const;
1197 template <class _Expr>
1200 __is_val_expr<_Expr>::value,
1204 operator+=(const _Expr& __v) const;
1206 template <class _Expr>
1209 __is_val_expr<_Expr>::value,
1213 operator-=(const _Expr& __v) const;
1215 template <class _Expr>
1218 __is_val_expr<_Expr>::value,
1222 operator^=(const _Expr& __v) const;
1224 template <class _Expr>
1227 __is_val_expr<_Expr>::value,
1231 operator&=(const _Expr& __v) const;
1233 template <class _Expr>
1236 __is_val_expr<_Expr>::value,
1240 operator|=(const _Expr& __v) const;
1242 template <class _Expr>
1245 __is_val_expr<_Expr>::value,
1249 operator<<=(const _Expr& __v) const;
1251 template <class _Expr>
1254 __is_val_expr<_Expr>::value,
1258 operator>>=(const _Expr& __v) const;
1296 template <class _Expr>
1300 __is_val_expr<_Expr>::value,
1303 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
1455 template <class _Expr>
1459 __is_val_expr<_Expr>::value,
1462 slice_array<_Tp>::operator>>=(const _Expr& __v) const
1553 template <class _Expr>
1556 __is_val_expr<_Expr>::value,
1560 operator=(const _Expr& __v) const;
1562 template <class _Expr>
1565 __is_val_expr<_Expr>::value,
1569 operator*=(const _Expr& __v) const;
1571 template <class _Expr>
1574 __is_val_expr<_Expr>::value,
1578 operator/=(const _Expr& __v) const;
1580 template <class _Expr>
1583 __is_val_expr<_Expr>::value,
1587 operator%=(const _Expr& __v) const;
1589 template <class _Expr>
1592 __is_val_expr<_Expr>::value,
1596 operator+=(const _Expr& __v) const;
1598 template <class _Expr>
1601 __is_val_expr<_Expr>::value,
1605 operator-=(const _Expr& __v) const;
1607 template <class _Expr>
1610 __is_val_expr<_Expr>::value,
1614 operator^=(const _Expr& __v) const;
1616 template <class _Expr>
1619 __is_val_expr<_Expr>::value,
1623 operator&=(const _Expr& __v) const;
1625 template <class _Expr>
1628 __is_val_expr<_Expr>::value,
1632 operator|=(const _Expr& __v) const;
1634 template <class _Expr>
1637 __is_val_expr<_Expr>::value,
1641 operator<<=(const _Expr& __v) const;
1643 template <class _Expr>
1646 __is_val_expr<_Expr>::value,
1650 operator>>=(const _Expr& __v) const;
1677 template <class _Expr>
1681 __is_val_expr<_Expr>::value,
1684 gslice_array<_Tp>::operator=(const _Expr& __v) const
1693 template <class _Expr>
1697 __is_val_expr<_Expr>::value,
1700 gslice_array<_Tp>::operator*=(const _Expr& __v) const
1709 template <class _Expr>
1713 __is_val_expr<_Expr>::value,
1716 gslice_array<_Tp>::operator/=(const _Expr& __v) const
1725 template <class _Expr>
1729 __is_val_expr<_Expr>::value,
1732 gslice_array<_Tp>::operator%=(const _Expr& __v) const
1741 template <class _Expr>
1745 __is_val_expr<_Expr>::value,
1748 gslice_array<_Tp>::operator+=(const _Expr& __v) const
1757 template <class _Expr>
1761 __is_val_expr<_Expr>::value,
1764 gslice_array<_Tp>::operator-=(const _Expr& __v) const
1773 template <class _Expr>
1777 __is_val_expr<_Expr>::value,
1780 gslice_array<_Tp>::operator^=(const _Expr& __v) const
1789 template <class _Expr>
1793 __is_val_expr<_Expr>::value,
1796 gslice_array<_Tp>::operator&=(const _Expr& __v) const
1805 template <class _Expr>
1809 __is_val_expr<_Expr>::value,
1812 gslice_array<_Tp>::operator|=(const _Expr& __v) const
1821 template <class _Expr>
1825 __is_val_expr<_Expr>::value,
1828 gslice_array<_Tp>::operator<<=(const _Expr& __v) const
1837 template <class _Expr>
1841 __is_val_expr<_Expr>::value,
1844 gslice_array<_Tp>::operator>>=(const _Expr& __v) const
1888 template <class _Expr>
1891 __is_val_expr<_Expr>::value,
1895 operator=(const _Expr& __v) const;
1897 template <class _Expr>
1900 __is_val_expr<_Expr>::value,
1904 operator*=(const _Expr& __v) const;
1906 template <class _Expr>
1909 __is_val_expr<_Expr>::value,
1913 operator/=(const _Expr& __v) const;
1915 template <class _Expr>
1918 __is_val_expr<_Expr>::value,
1922 operator%=(const _Expr& __v) const;
1924 template <class _Expr>
1927 __is_val_expr<_Expr>::value,
1931 operator+=(const _Expr& __v) const;
1933 template <class _Expr>
1936 __is_val_expr<_Expr>::value,
1940 operator-=(const _Expr& __v) const;
1942 template <class _Expr>
1945 __is_val_expr<_Expr>::value,
1949 operator^=(const _Expr& __v) const;
1951 template <class _Expr>
1954 __is_val_expr<_Expr>::value,
1958 operator&=(const _Expr& __v) const;
1960 template <class _Expr>
1963 __is_val_expr<_Expr>::value,
1967 operator|=(const _Expr& __v) const;
1969 template <class _Expr>
1972 __is_val_expr<_Expr>::value,
1976 operator<<=(const _Expr& __v) const;
1978 template <class _Expr>
1981 __is_val_expr<_Expr>::value,
1985 operator>>=(const _Expr& __v) const;
2011 template <class _Expr>
2015 __is_val_expr<_Expr>::value,
2018 mask_array<_Tp>::operator=(const _Expr& __v) const
2026 template <class _Expr>
2030 __is_val_expr<_Expr>::value,
2033 mask_array<_Tp>::operator*=(const _Expr& __v) const
2041 template <class _Expr>
2045 __is_val_expr<_Expr>::value,
2048 mask_array<_Tp>::operator/=(const _Expr& __v) const
2056 template <class _Expr>
2060 __is_val_expr<_Expr>::value,
2063 mask_array<_Tp>::operator%=(const _Expr& __v) const
2071 template <class _Expr>
2075 __is_val_expr<_Expr>::value,
2078 mask_array<_Tp>::operator+=(const _Expr& __v) const
2086 template <class _Expr>
2090 __is_val_expr<_Expr>::value,
2093 mask_array<_Tp>::operator-=(const _Expr& __v) const
2101 template <class _Expr>
2105 __is_val_expr<_Expr>::value,
2108 mask_array<_Tp>::operator^=(const _Expr& __v) const
2116 template <class _Expr>
2120 __is_val_expr<_Expr>::value,
2123 mask_array<_Tp>::operator&=(const _Expr& __v) const
2131 template <class _Expr>
2135 __is_val_expr<_Expr>::value,
2138 mask_array<_Tp>::operator|=(const _Expr& __v) const
2146 template <class _Expr>
2150 __is_val_expr<_Expr>::value,
2153 mask_array<_Tp>::operator<<=(const _Expr& __v) const
2161 template <class _Expr>
2165 __is_val_expr<_Expr>::value,
2168 mask_array<_Tp>::operator>>=(const _Expr& __v) const
2244 template <class _Expr>
2247 __is_val_expr<_Expr>::value,
2251 operator=(const _Expr& __v) const;
2253 template <class _Expr>
2256 __is_val_expr<_Expr>::value,
2260 operator*=(const _Expr& __v) const;
2262 template <class _Expr>
2265 __is_val_expr<_Expr>::value,
2269 operator/=(const _Expr& __v) const;
2271 template <class _Expr>
2274 __is_val_expr<_Expr>::value,
2278 operator%=(const _Expr& __v) const;
2280 template <class _Expr>
2283 __is_val_expr<_Expr>::value,
2287 operator+=(const _Expr& __v) const;
2289 template <class _Expr>
2292 __is_val_expr<_Expr>::value,
2296 operator-=(const _Expr& __v) const;
2298 template <class _Expr>
2301 __is_val_expr<_Expr>::value,
2305 operator^=(const _Expr& __v) const;
2307 template <class _Expr>
2310 __is_val_expr<_Expr>::value,
2314 operator&=(const _Expr& __v) const;
2316 template <class _Expr>
2319 __is_val_expr<_Expr>::value,
2323 operator|=(const _Expr& __v) const;
2325 template <class _Expr>
2328 __is_val_expr<_Expr>::value,
2332 operator<<=(const _Expr& __v) const;
2334 template <class _Expr>
2337 __is_val_expr<_Expr>::value,
2341 operator>>=(const _Expr& __v) const;
2372 template <class _Expr>
2376 __is_val_expr<_Expr>::value,
2379 indirect_array<_Tp>::operator=(const _Expr& __v) const
2387 template <class _Expr>
2391 __is_val_expr<_Expr>::value,
2394 indirect_array<_Tp>::operator*=(const _Expr& __v) const
2402 template <class _Expr>
2406 __is_val_expr<_Expr>::value,
2409 indirect_array<_Tp>::operator/=(const _Expr& __v) const
2417 template <class _Expr>
2421 __is_val_expr<_Expr>::value,
2424 indirect_array<_Tp>::operator%=(const _Expr& __v) const
2432 template <class _Expr>
2436 __is_val_expr<_Expr>::value,
2439 indirect_array<_Tp>::operator+=(const _Expr& __v) const
2447 template <class _Expr>
2451 __is_val_expr<_Expr>::value,
2454 indirect_array<_Tp>::operator-=(const _Expr& __v) const
2462 template <class _Expr>
2466 __is_val_expr<_Expr>::value,
2469 indirect_array<_Tp>::operator^=(const _Expr& __v) const
2477 template <class _Expr>
2481 __is_val_expr<_Expr>::value,
2484 indirect_array<_Tp>::operator&=(const _Expr& __v) const
2492 template <class _Expr>
2496 __is_val_expr<_Expr>::value,
2499 indirect_array<_Tp>::operator|=(const _Expr& __v) const
2507 template <class _Expr>
2511 __is_val_expr<_Expr>::value,
2514 indirect_array<_Tp>::operator<<=(const _Expr& __v) const
2522 template <class _Expr>
2526 __is_val_expr<_Expr>::value,
2529 indirect_array<_Tp>::operator>>=(const _Expr& __v) const
3423 template <class _Expr>
3427 __is_val_expr<_Expr>::value,
3430 valarray<_Tp>::operator*=(const _Expr& __v)
3439 template <class _Expr>
3443 __is_val_expr<_Expr>::value,
3446 valarray<_Tp>::operator/=(const _Expr& __v)
3455 template <class _Expr>
3459 __is_val_expr<_Expr>::value,
3462 valarray<_Tp>::operator%=(const _Expr& __v)
3471 template <class _Expr>
3475 __is_val_expr<_Expr>::value,
3478 valarray<_Tp>::operator+=(const _Expr& __v)
3487 template <class _Expr>
3491 __is_val_expr<_Expr>::value,
3494 valarray<_Tp>::operator-=(const _Expr& __v)
3503 template <class _Expr>
3507 __is_val_expr<_Expr>::value,
3510 valarray<_Tp>::operator^=(const _Expr& __v)
3519 template <class _Expr>
3523 __is_val_expr<_Expr>::value,
3526 valarray<_Tp>::operator|=(const _Expr& __v)
3535 template <class _Expr>
3539 __is_val_expr<_Expr>::value,
3542 valarray<_Tp>::operator&=(const _Expr& __v)
3551 template <class _Expr>
3555 __is_val_expr<_Expr>::value,
3558 valarray<_Tp>::operator<<=(const _Expr& __v)
3567 template <class _Expr>
3571 __is_val_expr<_Expr>::value,
3574 valarray<_Tp>::operator>>=(const _Expr& __v)
3770 template<class _Expr>
3774 __is_val_expr<_Expr>::value,
3775 __val_expr<_BinaryOp<multiplies<typename _Expr::value_type>,
3776 _Expr, __scalar_expr<typename _Expr::value_type> > >
3778 operator*(const _Expr& __x, const typename _Expr::value_type& __y)
3780 typedef typename _Expr::value_type value_type;
3781 typedef _BinaryOp<multiplies<value_type>, _Expr, __scalar_expr<value_type> > _Op;
3786 template<class _Expr>
3790 __is_val_expr<_Expr>::value,
3791 __val_expr<_BinaryOp<multiplies<typename _Expr::value_type>,
3792 __scalar_expr<typename _Expr::value_type>, _Expr> >
3794 operator*(const typename _Expr::value_type& __x, const _Expr& __y)
3796 typedef typename _Expr::value_type value_type;
3797 typedef _BinaryOp<multiplies<value_type>, __scalar_expr<value_type>, _Expr> _Op;
3816 template<class _Expr>
3820 __is_val_expr<_Expr>::value,
3821 __val_expr<_BinaryOp<divides<typename _Expr::value_type>,
3822 _Expr, __scalar_expr<typename _Expr::value_type> > >
3824 operator/(const _Expr& __x, const typename _Expr::value_type& __y)
3826 typedef typename _Expr::value_type value_type;
3827 typedef _BinaryOp<divides<value_type>, _Expr, __scalar_expr<value_type> > _Op;
3832 template<class _Expr>
3836 __is_val_expr<_Expr>::value,
3837 __val_expr<_BinaryOp<divides<typename _Expr::value_type>,
3838 __scalar_expr<typename _Expr::value_type>, _Expr> >
3840 operator/(const typename _Expr::value_type& __x, const _Expr& __y)
3842 typedef typename _Expr::value_type value_type;
3843 typedef _BinaryOp<divides<value_type>, __scalar_expr<value_type>, _Expr> _Op;
3862 template<class _Expr>
3866 __is_val_expr<_Expr>::value,
3867 __val_expr<_BinaryOp<modulus<typename _Expr::value_type>,
3868 _Expr, __scalar_expr<typename _Expr::value_type> > >
3870 operator%(const _Expr& __x, const typename _Expr::value_type& __y)
3872 typedef typename _Expr::value_type value_type;
3873 typedef _BinaryOp<modulus<value_type>, _Expr, __scalar_expr<value_type> > _Op;
3878 template<class _Expr>
3882 __is_val_expr<_Expr>::value,
3883 __val_expr<_BinaryOp<modulus<typename _Expr::value_type>,
3884 __scalar_expr<typename _Expr::value_type>, _Expr> >
3886 operator%(const typename _Expr::value_type& __x, const _Expr& __y)
3888 typedef typename _Expr::value_type value_type;
3889 typedef _BinaryOp<modulus<value_type>, __scalar_expr<value_type>, _Expr> _Op;
3908 template<class _Expr>
3912 __is_val_expr<_Expr>::value,
3913 __val_expr<_BinaryOp<plus<typename _Expr::value_type>,
3914 _Expr, __scalar_expr<typename _Expr::value_type> > >
3916 operator+(const _Expr& __x, const typename _Expr::value_type& __y)
3918 typedef typename _Expr::value_type value_type;
3919 typedef _BinaryOp<plus<value_type>, _Expr, __scalar_expr<value_type> > _Op;
3924 template<class _Expr>
3928 __is_val_expr<_Expr>::value,
3929 __val_expr<_BinaryOp<plus<typename _Expr::value_type>,
3930 __scalar_expr<typename _Expr::value_type>, _Expr> >
3932 operator+(const typename _Expr::value_type& __x, const _Expr& __y)
3934 typedef typename _Expr::value_type value_type;
3935 typedef _BinaryOp<plus<value_type>, __scalar_expr<value_type>, _Expr> _Op;
3954 template<class _Expr>
3958 __is_val_expr<_Expr>::value,
3959 __val_expr<_BinaryOp<minus<typename _Expr::value_type>,
3960 _Expr, __scalar_expr<typename _Expr::value_type> > >
3962 operator-(const _Expr& __x, const typename _Expr::value_type& __y)
3964 typedef typename _Expr::value_type value_type;
3965 typedef _BinaryOp<minus<value_type>, _Expr, __scalar_expr<value_type> > _Op;
3970 template<class _Expr>
3974 __is_val_expr<_Expr>::value,
3975 __val_expr<_BinaryOp<minus<typename _Expr::value_type>,
3976 __scalar_expr<typename _Expr::value_type>, _Expr> >
3978 operator-(const typename _Expr::value_type& __x, const _Expr& __y)
3980 typedef typename _Expr::value_type value_type;
3981 typedef _BinaryOp<minus<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4000 template<class _Expr>
4004 __is_val_expr<_Expr>::value,
4005 __val_expr<_BinaryOp<bit_xor<typename _Expr::value_type>,
4006 _Expr, __scalar_expr<typename _Expr::value_type> > >
4008 operator^(const _Expr& __x, const typename _Expr::value_type& __y)
4010 typedef typename _Expr::value_type value_type;
4011 typedef _BinaryOp<bit_xor<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4016 template<class _Expr>
4020 __is_val_expr<_Expr>::value,
4021 __val_expr<_BinaryOp<bit_xor<typename _Expr::value_type>,
4022 __scalar_expr<typename _Expr::value_type>, _Expr> >
4024 operator^(const typename _Expr::value_type& __x, const _Expr& __y)
4026 typedef typename _Expr::value_type value_type;
4027 typedef _BinaryOp<bit_xor<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4046 template<class _Expr>
4050 __is_val_expr<_Expr>::value,
4051 __val_expr<_BinaryOp<bit_and<typename _Expr::value_type>,
4052 _Expr, __scalar_expr<typename _Expr::value_type> > >
4054 operator&(const _Expr& __x, const typename _Expr::value_type& __y)
4056 typedef typename _Expr::value_type value_type;
4057 typedef _BinaryOp<bit_and<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4062 template<class _Expr>
4066 __is_val_expr<_Expr>::value,
4067 __val_expr<_BinaryOp<bit_and<typename _Expr::value_type>,
4068 __scalar_expr<typename _Expr::value_type>, _Expr> >
4070 operator&(const typename _Expr::value_type& __x, const _Expr& __y)
4072 typedef typename _Expr::value_type value_type;
4073 typedef _BinaryOp<bit_and<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4092 template<class _Expr>
4096 __is_val_expr<_Expr>::value,
4097 __val_expr<_BinaryOp<bit_or<typename _Expr::value_type>,
4098 _Expr, __scalar_expr<typename _Expr::value_type> > >
4100 operator|(const _Expr& __x, const typename _Expr::value_type& __y)
4102 typedef typename _Expr::value_type value_type;
4103 typedef _BinaryOp<bit_or<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4108 template<class _Expr>
4112 __is_val_expr<_Expr>::value,
4113 __val_expr<_BinaryOp<bit_or<typename _Expr::value_type>,
4114 __scalar_expr<typename _Expr::value_type>, _Expr> >
4116 operator|(const typename _Expr::value_type& __x, const _Expr& __y)
4118 typedef typename _Expr::value_type value_type;
4119 typedef _BinaryOp<bit_or<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4138 template<class _Expr>
4142 __is_val_expr<_Expr>::value,
4143 __val_expr<_BinaryOp<__bit_shift_left<typename _Expr::value_type>,
4144 _Expr, __scalar_expr<typename _Expr::value_type> > >
4146 operator<<(const _Expr& __x, const typename _Expr::value_type& __y)
4148 typedef typename _Expr::value_type value_type;
4149 typedef _BinaryOp<__bit_shift_left<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4154 template<class _Expr>
4158 __is_val_expr<_Expr>::value,
4159 __val_expr<_BinaryOp<__bit_shift_left<typename _Expr::value_type>,
4160 __scalar_expr<typename _Expr::value_type>, _Expr> >
4162 operator<<(const typename _Expr::value_type& __x, const _Expr& __y)
4164 typedef typename _Expr::value_type value_type;
4165 typedef _BinaryOp<__bit_shift_left<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4184 template<class _Expr>
4188 __is_val_expr<_Expr>::value,
4189 __val_expr<_BinaryOp<__bit_shift_right<typename _Expr::value_type>,
4190 _Expr, __scalar_expr<typename _Expr::value_type> > >
4192 operator>>(const _Expr& __x, const typename _Expr::value_type& __y)
4194 typedef typename _Expr::value_type value_type;
4195 typedef _BinaryOp<__bit_shift_right<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4200 template<class _Expr>
4204 __is_val_expr<_Expr>::value,
4205 __val_expr<_BinaryOp<__bit_shift_right<typename _Expr::value_type>,
4206 __scalar_expr<typename _Expr::value_type>, _Expr> >
4208 operator>>(const typename _Expr::value_type& __x, const _Expr& __y)
4210 typedef typename _Expr::value_type value_type;
4211 typedef _BinaryOp<__bit_shift_right<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4230 template<class _Expr>
4234 __is_val_expr<_Expr>::value,
4235 __val_expr<_BinaryOp<logical_and<typename _Expr::value_type>,
4236 _Expr, __scalar_expr<typename _Expr::value_type> > >
4238 operator&&(const _Expr& __x, const typename _Expr::value_type& __y)
4240 typedef typename _Expr::value_type value_type;
4241 typedef _BinaryOp<logical_and<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4246 template<class _Expr>
4250 __is_val_expr<_Expr>::value,
4251 __val_expr<_BinaryOp<logical_and<typename _Expr::value_type>,
4252 __scalar_expr<typename _Expr::value_type>, _Expr> >
4254 operator&&(const typename _Expr::value_type& __x, const _Expr& __y)
4256 typedef typename _Expr::value_type value_type;
4257 typedef _BinaryOp<logical_and<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4276 template<class _Expr>
4280 __is_val_expr<_Expr>::value,
4281 __val_expr<_BinaryOp<logical_or<typename _Expr::value_type>,
4282 _Expr, __scalar_expr<typename _Expr::value_type> > >
4284 operator||(const _Expr& __x, const typename _Expr::value_type& __y)
4286 typedef typename _Expr::value_type value_type;
4287 typedef _BinaryOp<logical_or<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4292 template<class _Expr>
4296 __is_val_expr<_Expr>::value,
4297 __val_expr<_BinaryOp<logical_or<typename _Expr::value_type>,
4298 __scalar_expr<typename _Expr::value_type>, _Expr> >
4300 operator||(const typename _Expr::value_type& __x, const _Expr& __y)
4302 typedef typename _Expr::value_type value_type;
4303 typedef _BinaryOp<logical_or<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4322 template<class _Expr>
4326 __is_val_expr<_Expr>::value,
4327 __val_expr<_BinaryOp<equal_to<typename _Expr::value_type>,
4328 _Expr, __scalar_expr<typename _Expr::value_type> > >
4330 operator==(const _Expr& __x, const typename _Expr::value_type& __y)
4332 typedef typename _Expr::value_type value_type;
4333 typedef _BinaryOp<equal_to<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4338 template<class _Expr>
4342 __is_val_expr<_Expr>::value,
4343 __val_expr<_BinaryOp<equal_to<typename _Expr::value_type>,
4344 __scalar_expr<typename _Expr::value_type>, _Expr> >
4346 operator==(const typename _Expr::value_type& __x, const _Expr& __y)
4348 typedef typename _Expr::value_type value_type;
4349 typedef _BinaryOp<equal_to<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4368 template<class _Expr>
4372 __is_val_expr<_Expr>::value,
4373 __val_expr<_BinaryOp<not_equal_to<typename _Expr::value_type>,
4374 _Expr, __scalar_expr<typename _Expr::value_type> > >
4376 operator!=(const _Expr& __x, const typename _Expr::value_type& __y)
4378 typedef typename _Expr::value_type value_type;
4379 typedef _BinaryOp<not_equal_to<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4384 template<class _Expr>
4388 __is_val_expr<_Expr>::value,
4389 __val_expr<_BinaryOp<not_equal_to<typename _Expr::value_type>,
4390 __scalar_expr<typename _Expr::value_type>, _Expr> >
4392 operator!=(const typename _Expr::value_type& __x, const _Expr& __y)
4394 typedef typename _Expr::value_type value_type;
4395 typedef _BinaryOp<not_equal_to<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4414 template<class _Expr>
4418 __is_val_expr<_Expr>::value,
4419 __val_expr<_BinaryOp<less<typename _Expr::value_type>,
4420 _Expr, __scalar_expr<typename _Expr::value_type> > >
4422 operator<(const _Expr& __x, const typename _Expr::value_type& __y)
4424 typedef typename _Expr::value_type value_type;
4425 typedef _BinaryOp<less<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4430 template<class _Expr>
4434 __is_val_expr<_Expr>::value,
4435 __val_expr<_BinaryOp<less<typename _Expr::value_type>,
4436 __scalar_expr<typename _Expr::value_type>, _Expr> >
4438 operator<(const typename _Expr::value_type& __x, const _Expr& __y)
4440 typedef typename _Expr::value_type value_type;
4441 typedef _BinaryOp<less<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4460 template<class _Expr>
4464 __is_val_expr<_Expr>::value,
4465 __val_expr<_BinaryOp<greater<typename _Expr::value_type>,
4466 _Expr, __scalar_expr<typename _Expr::value_type> > >
4468 operator>(const _Expr& __x, const typename _Expr::value_type& __y)
4470 typedef typename _Expr::value_type value_type;
4471 typedef _BinaryOp<greater<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4476 template<class _Expr>
4480 __is_val_expr<_Expr>::value,
4481 __val_expr<_BinaryOp<greater<typename _Expr::value_type>,
4482 __scalar_expr<typename _Expr::value_type>, _Expr> >
4484 operator>(const typename _Expr::value_type& __x, const _Expr& __y)
4486 typedef typename _Expr::value_type value_type;
4487 typedef _BinaryOp<greater<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4506 template<class _Expr>
4510 __is_val_expr<_Expr>::value,
4511 __val_expr<_BinaryOp<less_equal<typename _Expr::value_type>,
4512 _Expr, __scalar_expr<typename _Expr::value_type> > >
4514 operator<=(const _Expr& __x, const typename _Expr::value_type& __y)
4516 typedef typename _Expr::value_type value_type;
4517 typedef _BinaryOp<less_equal<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4522 template<class _Expr>
4526 __is_val_expr<_Expr>::value,
4527 __val_expr<_BinaryOp<less_equal<typename _Expr::value_type>,
4528 __scalar_expr<typename _Expr::value_type>, _Expr> >
4530 operator<=(const typename _Expr::value_type& __x, const _Expr& __y)
4532 typedef typename _Expr::value_type value_type;
4533 typedef _BinaryOp<less_equal<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4552 template<class _Expr>
4556 __is_val_expr<_Expr>::value,
4557 __val_expr<_BinaryOp<greater_equal<typename _Expr::value_type>,
4558 _Expr, __scalar_expr<typename _Expr::value_type> > >
4560 operator>=(const _Expr& __x, const typename _Expr::value_type& __y)
4562 typedef typename _Expr::value_type value_type;
4563 typedef _BinaryOp<greater_equal<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4568 template<class _Expr>
4572 __is_val_expr<_Expr>::value,
4573 __val_expr<_BinaryOp<greater_equal<typename _Expr::value_type>,
4574 __scalar_expr<typename _Expr::value_type>, _Expr> >
4576 operator>=(const typename _Expr::value_type& __x, const _Expr& __y)
4578 typedef typename _Expr::value_type value_type;
4579 typedef _BinaryOp<greater_equal<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4584 template<class _Expr>
4588 __is_val_expr<_Expr>::value,
4589 __val_expr<_UnaryOp<__abs_expr<typename _Expr::value_type>, _Expr> >
4591 abs(const _Expr& __x)
4593 typedef typename _Expr::value_type value_type;
4594 typedef _UnaryOp<__abs_expr<value_type>, _Expr> _Op;
4598 template<class _Expr>
4602 __is_val_expr<_Expr>::value,
4603 __val_expr<_UnaryOp<__acos_expr<typename _Expr::value_type>, _Expr> >
4605 acos(const _Expr& __x)
4607 typedef typename _Expr::value_type value_type;
4608 typedef _UnaryOp<__acos_expr<value_type>, _Expr> _Op;
4612 template<class _Expr>
4616 __is_val_expr<_Expr>::value,
4617 __val_expr<_UnaryOp<__asin_expr<typename _Expr::value_type>, _Expr> >
4619 asin(const _Expr& __x)
4621 typedef typename _Expr::value_type value_type;
4622 typedef _UnaryOp<__asin_expr<value_type>, _Expr> _Op;
4626 template<class _Expr>
4630 __is_val_expr<_Expr>::value,
4631 __val_expr<_UnaryOp<__atan_expr<typename _Expr::value_type>, _Expr> >
4633 atan(const _Expr& __x)
4635 typedef typename _Expr::value_type value_type;
4636 typedef _UnaryOp<__atan_expr<value_type>, _Expr> _Op;
4654 template<class _Expr>
4658 __is_val_expr<_Expr>::value,
4659 __val_expr<_BinaryOp<__atan2_expr<typename _Expr::value_type>,
4660 _Expr, __scalar_expr<typename _Expr::value_type> > >
4662 atan2(const _Expr& __x, const typename _Expr::value_type& __y)
4664 typedef typename _Expr::value_type value_type;
4665 typedef _BinaryOp<__atan2_expr<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4670 template<class _Expr>
4674 __is_val_expr<_Expr>::value,
4675 __val_expr<_BinaryOp<__atan2_expr<typename _Expr::value_type>,
4676 __scalar_expr<typename _Expr::value_type>, _Expr> >
4678 atan2(const typename _Expr::value_type& __x, const _Expr& __y)
4680 typedef typename _Expr::value_type value_type;
4681 typedef _BinaryOp<__atan2_expr<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4686 template<class _Expr>
4690 __is_val_expr<_Expr>::value,
4691 __val_expr<_UnaryOp<__cos_expr<typename _Expr::value_type>, _Expr> >
4693 cos(const _Expr& __x)
4695 typedef typename _Expr::value_type value_type;
4696 typedef _UnaryOp<__cos_expr<value_type>, _Expr> _Op;
4700 template<class _Expr>
4704 __is_val_expr<_Expr>::value,
4705 __val_expr<_UnaryOp<__cosh_expr<typename _Expr::value_type>, _Expr> >
4707 cosh(const _Expr& __x)
4709 typedef typename _Expr::value_type value_type;
4710 typedef _UnaryOp<__cosh_expr<value_type>, _Expr> _Op;
4714 template<class _Expr>
4718 __is_val_expr<_Expr>::value,
4719 __val_expr<_UnaryOp<__exp_expr<typename _Expr::value_type>, _Expr> >
4721 exp(const _Expr& __x)
4723 typedef typename _Expr::value_type value_type;
4724 typedef _UnaryOp<__exp_expr<value_type>, _Expr> _Op;
4728 template<class _Expr>
4732 __is_val_expr<_Expr>::value,
4733 __val_expr<_UnaryOp<__log_expr<typename _Expr::value_type>, _Expr> >
4735 log(const _Expr& __x)
4737 typedef typename _Expr::value_type value_type;
4738 typedef _UnaryOp<__log_expr<value_type>, _Expr> _Op;
4742 template<class _Expr>
4746 __is_val_expr<_Expr>::value,
4747 __val_expr<_UnaryOp<__log10_expr<typename _Expr::value_type>, _Expr> >
4749 log10(const _Expr& __x)
4751 typedef typename _Expr::value_type value_type;
4752 typedef _UnaryOp<__log10_expr<value_type>, _Expr> _Op;
4770 template<class _Expr>
4774 __is_val_expr<_Expr>::value,
4775 __val_expr<_BinaryOp<__pow_expr<typename _Expr::value_type>,
4776 _Expr, __scalar_expr<typename _Expr::value_type> > >
4778 pow(const _Expr& __x, const typename _Expr::value_type& __y)
4780 typedef typename _Expr::value_type value_type;
4781 typedef _BinaryOp<__pow_expr<value_type>, _Expr, __scalar_expr<value_type> > _Op;
4786 template<class _Expr>
4790 __is_val_expr<_Expr>::value,
4791 __val_expr<_BinaryOp<__pow_expr<typename _Expr::value_type>,
4792 __scalar_expr<typename _Expr::value_type>, _Expr> >
4794 pow(const typename _Expr::value_type& __x, const _Expr& __y)
4796 typedef typename _Expr::value_type value_type;
4797 typedef _BinaryOp<__pow_expr<value_type>, __scalar_expr<value_type>, _Expr> _Op;
4802 template<class _Expr>
4806 __is_val_expr<_Expr>::value,
4807 __val_expr<_UnaryOp<__sin_expr<typename _Expr::value_type>, _Expr> >
4809 sin(const _Expr& __x)
4811 typedef typename _Expr::value_type value_type;
4812 typedef _UnaryOp<__sin_expr<value_type>, _Expr> _Op;
4816 template<class _Expr>
4820 __is_val_expr<_Expr>::value,
4821 __val_expr<_UnaryOp<__sinh_expr<typename _Expr::value_type>, _Expr> >
4823 sinh(const _Expr& __x)
4825 typedef typename _Expr::value_type value_type;
4826 typedef _UnaryOp<__sinh_expr<value_type>, _Expr> _Op;
4830 template<class _Expr>
4834 __is_val_expr<_Expr>::value,
4835 __val_expr<_UnaryOp<__sqrt_expr<typename _Expr::value_type>, _Expr> >
4837 sqrt(const _Expr& __x)
4839 typedef typename _Expr::value_type value_type;
4840 typedef _UnaryOp<__sqrt_expr<value_type>, _Expr> _Op;
4844 template<class _Expr>
4848 __is_val_expr<_Expr>::value,
4849 __val_expr<_UnaryOp<__tan_expr<typename _Expr::value_type>, _Expr> >
4851 tan(const _Expr& __x)
4853 typedef typename _Expr::value_type value_type;
4854 typedef _UnaryOp<__tan_expr<value_type>, _Expr> _Op;
4858 template<class _Expr>
4862 __is_val_expr<_Expr>::value,
4863 __val_expr<_UnaryOp<__tanh_expr<typename _Expr::value_type>, _Expr> >
4865 tanh(const _Expr& __x)
4867 typedef typename _Expr::value_type value_type;
4868 typedef _UnaryOp<__tanh_expr<value_type>, _Expr> _Op;