1 | // Boost.Range library concept checks |
2 | // |
3 | // Copyright Neil Groves 2009. Use, modification and distribution |
4 | // are subject to the Boost Software License, Version 1.0. (See |
5 | // accompanying file LICENSE_1_0.txt or copy at |
6 | // http://www.boost.org/LICENSE_1_0.txt) |
7 | // |
8 | #ifndef BOOST_RANGE_DETAIL_MISC_CONCEPT_HPP_INCLUDED |
9 | #define BOOST_RANGE_DETAIL_MISC_CONCEPT_HPP_INCLUDED |
10 | |
11 | #include <boost/concept_check.hpp> |
12 | |
13 | namespace boost |
14 | { |
15 | namespace range_detail |
16 | { |
17 | template<typename T1, typename T2> |
18 | class SameTypeConcept |
19 | { |
20 | public: |
21 | BOOST_CONCEPT_USAGE(SameTypeConcept) |
22 | { |
23 | same_type(a,b); |
24 | } |
25 | private: |
26 | template<typename T> void same_type(T,T) {} |
27 | T1 a; |
28 | T2 b; |
29 | }; |
30 | } |
31 | } |
32 | |
33 | #endif // include guard |
34 | |