]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/boost/qvm/gen/vec_assign3.hpp
update sources to v12.2.3
[ceph.git] / ceph / src / boost / boost / qvm / gen / vec_assign3.hpp
1 //Copyright (c) 2008-2017 Emil Dotchevski and Reverge Studios, Inc.
2
3 //Distributed under the Boost Software License, Version 1.0. (See accompanying
4 //file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
5
6 #ifndef BOOST_QVM_2D7E8392C53CBC9121E33749ECF4D5
7 #define BOOST_QVM_2D7E8392C53CBC9121E33749ECF4D5
8
9 //This file was generated by a program. Do not edit manually.
10
11 #include <boost/qvm/enable_if.hpp>
12 #include <boost/qvm/inline.hpp>
13 #include <boost/qvm/vec_traits.hpp>
14
15 namespace
16 boost
17 {
18 namespace
19 qvm
20 {
21 template <class A,class B>
22 BOOST_QVM_INLINE_OPERATIONS
23 typename enable_if_c<
24 vec_traits<A>::dim==3 && vec_traits<B>::dim==3,
25 A &>::type
26 assign( A & a, B const & b )
27 {
28 vec_traits<A>::template write_element<0>(a)=vec_traits<B>::template read_element<0>(b);
29 vec_traits<A>::template write_element<1>(a)=vec_traits<B>::template read_element<1>(b);
30 vec_traits<A>::template write_element<2>(a)=vec_traits<B>::template read_element<2>(b);
31 return a;
32 }
33
34 namespace
35 sfinae
36 {
37 using ::boost::qvm::assign;
38 }
39
40 namespace
41 qvm_detail
42 {
43 template <int D>
44 struct assign_vv_defined;
45
46 template <>
47 struct
48 assign_vv_defined<3>
49 {
50 static bool const value=true;
51 };
52 }
53
54 }
55 }
56
57 #endif