/usr/include/boost/units/detail
Edit: /usr/include/boost/units/detail/dim_impl.hpp (1744B)
// Boost.Units - A C++ library for zero-overhead dimensional analysis and
// unit/quantity manipulation and conversion
//
// Copyright (C) 2003-2008 Matthias Christian Schabel
// Copyright (C) 2008 Steven Watanabe
//
// Distributed under the Boost Software License, Version 1.0. (See
// accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt)
#ifndef BOOST_UNITS_DIM_IMPL_HPP
#define BOOST_UNITS_DIM_IMPL_HPP
#include
#include
#include
/// \file
/// \brief Class encapsulating a dimension tag/value pair
namespace boost {
namespace units {
namespace detail {
struct dim_tag;
}
}
namespace mpl {
/// Less than comparison for sorting @c dim.
template<>
struct less_impl
{
template
struct apply : mpl::less {};
};
}
namespace units {
template
struct dim;
template
class static_rational;
namespace detail {
/// Extract @c tag_type from a @c dim.
template
struct get_tag
{
typedef typename T::tag_type type;
};
/// Extract @c value_type from a @c dim.
template
struct get_value
{
typedef typename T::value_type type;
};
/// Determine if a @c dim is empty (has a zero exponent).
template
struct is_empty_dim;
template
struct is_empty_dim< dim > > :
mpl::true_
{ };
template
struct is_empty_dim< dim > :
mpl::false_
{ };
} // namespace detail
} // namespace units
} // namespace boost
#endif // BOOST_UNITS_DIM_IMPL_HPP