1// Boost.Units - A C++ library for zero-overhead dimensional analysis and
2// unit/quantity manipulation and conversion
3//
4// Copyright (C) 2003-2008 Matthias Christian Schabel
5// Copyright (C) 2008 Steven Watanabe
6//
7// Distributed under the Boost Software License, Version 1.0. (See
8// accompanying file LICENSE_1_0.txt or copy at
9// http://www.boost.org/LICENSE_1_0.txt)
10
11#ifndef BOOST_UNITS_IS_DIMENSION_LIST_HPP
12#define BOOST_UNITS_IS_DIMENSION_LIST_HPP
13
14///
15/// \file
16/// \brief Check that a type is a valid dimension list.
17///
18
19#include <boost/mpl/bool.hpp>
20
21#include <boost/units/units_fwd.hpp>
22
23namespace boost {
24
25namespace units {
26
27/// Check that a type is a valid dimension list.
28template<typename Seq>
29struct is_dimension_list :
30 public mpl::false_
31{ };
32
33template<typename Item, typename Next>
34struct is_dimension_list<list<Item, Next> > :
35 public mpl::true_
36{ };
37
38template<>
39struct is_dimension_list<dimensionless_type> :
40 public mpl::true_
41{ };
42
43} // namespace units
44
45} // namespace boost
46
47#endif // BOOST_UNITS_IS_DIMENSION_LIST_HPP
48

source code of boost/boost/units/is_dimension_list.hpp