Boost.Ratio/Chrono: Update reference structure
[SVN r68189]
This commit is contained in:
parent
27841a060c
commit
7cd1f04f51
@ -71,3 +71,5 @@ boostbook standalone
|
||||
<format>pdf:<xsl:param>admon.graphics.path=$(boost-images)/
|
||||
<format>pdf:<xsl:param>boost.url.prefix=http://www.boost.org/doc/libs/release/libs/regex/doc/html
|
||||
;
|
||||
|
||||
install pdf-install : standalone : <location>. <install-type>PDF ;
|
||||
|
BIN
doc/ratio.pdf
BIN
doc/ratio.pdf
Binary file not shown.
485
doc/ratio.qbk
485
doc/ratio.qbk
@ -32,56 +32,60 @@
|
||||
[def __hours `hours`]
|
||||
|
||||
[/===============================================]
|
||||
[def __ratio [link boost_ratio.reference.ratio_hpp.ratio `ratio`]]
|
||||
[def __ratio [link boost_ratio.reference.std.ratio_hpp.ratio `ratio`]]
|
||||
|
||||
[template ratio_conf[link_text] [link boost_ratio.reference.ratio_hpp.conf [link_text]]]
|
||||
[template ratio_conf[link_text] [link boost_ratio.reference.std.ratio_hpp.conf [link_text]]]
|
||||
|
||||
[def __BOOST_RATIO_USES_STATIC_ASSERT [link boost_ratio.reference.ratio_hpp.conf `BOOST_RATIO_USES_STATIC_ASSERT`]]
|
||||
[def __BOOST_RATIO_USES_MPL_ASSERT [link boost_ratio.reference.ratio_hpp.conf `BOOST_RATIO_USES_MPL_ASSERT`]]
|
||||
[def __BOOST_RATIO_USES_ARRAY_ASSERT [link boost_ratio.reference.ratio_hpp.conf `BOOST_RATIO_USES_ARRAY_ASSERT`]]
|
||||
[def __BOOST_RATIO_USES_STATIC_ASSERT [link boost_ratio.reference.std.ratio_hpp.conf `BOOST_RATIO_USES_STATIC_ASSERT`]]
|
||||
[def __BOOST_RATIO_USES_MPL_ASSERT [link boost_ratio.reference.std.ratio_hpp.conf `BOOST_RATIO_USES_MPL_ASSERT`]]
|
||||
[def __BOOST_RATIO_USES_ARRAY_ASSERT [link boost_ratio.reference.std.ratio_hpp.conf `BOOST_RATIO_USES_ARRAY_ASSERT`]]
|
||||
|
||||
[template ratio_arithmetic[link_text] [link boost_ratio.reference.ratio_hpp.ratio_arithmetic [link_text]]]
|
||||
[def __ratio_add [link boost_ratio.reference.ratio_hpp.ratio_arithmetic `ratio_add`]]
|
||||
[def __ratio_subtract [link boost_ratio.reference.ratio_hpp.ratio_arithmetic `ratio_subtract`]]
|
||||
[def __ratio_multiply [link boost_ratio.reference.ratio_hpp.ratio_arithmetic `ratio_multiply`]]
|
||||
[def __ratio_divide [link boost_ratio.reference.ratio_hpp.ratio_arithmetic `ratio_divide`]]
|
||||
[def __ratio_negate [link boost_ratio.reference.ratio_hpp.ratio_arithmetic `ratio_negate`]]
|
||||
[def __ratio_abs [link boost_ratio.reference.ratio_hpp.ratio_arithmetic `ratio_abs`]]
|
||||
[def __ratio_sign [link boost_ratio.reference.ratio_hpp.ratio_arithmetic `ratio_sign`]]
|
||||
[def __ratio_gcd [link boost_ratio.reference.ratio_hpp.ratio_arithmetic `ratio_gcd`]]
|
||||
[def __ratio_lcm [link boost_ratio.reference.ratio_hpp.ratio_arithmetic `ratio_lcm`]]
|
||||
[def __BOOST_RATIO_EXTENSIONS [link boost_ratio.reference.std.ratio_hpp.extensions `BOOST_RATIO_EXTENSIONS`]]
|
||||
|
||||
|
||||
[template ratio_comparison[link_text] [link boost_ratio.reference.ratio_hpp.ratio_comparison [link_text]]]
|
||||
[def __ratio_equal [link boost_ratio.reference.ratio_hpp.ratio_comparison `ratio_equal`]]
|
||||
[def __ratio_not_equal [link boost_ratio.reference.ratio_hpp.ratio_comparison `ratio_not_equal`]]
|
||||
[def __ratio_less [link boost_ratio.reference.ratio_hpp.ratio_comparison `ratio_less`]]
|
||||
[def __ratio_less_equal [link boost_ratio.reference.ratio_hpp.ratio_comparison `ratio_less_equal`]]
|
||||
[def __ratio_greater [link boost_ratio.reference.ratio_hpp.ratio_comparison `ratio_greater`]]
|
||||
[def __ratio_greater_equal [link boost_ratio.reference.ratio_hpp.ratio_comparison `ratio_greater_equal`]]
|
||||
|
||||
[template ratio_arithmetic[link_text] [link boost_ratio.reference.std.ratio_hpp.ratio_arithmetic [link_text]]]
|
||||
[def __ratio_add [link boost_ratio.reference.std.ratio_hpp.ratio_arithmetic `ratio_add`]]
|
||||
[def __ratio_subtract [link boost_ratio.reference.std.ratio_hpp.ratio_arithmetic `ratio_subtract`]]
|
||||
[def __ratio_multiply [link boost_ratio.reference.std.ratio_hpp.ratio_arithmetic `ratio_multiply`]]
|
||||
[def __ratio_divide [link boost_ratio.reference.std.ratio_hpp.ratio_arithmetic `ratio_divide`]]
|
||||
[def __ratio_negate [link boost_ratio.reference.std.ratio_hpp.ratio_arithmetic `ratio_negate`]]
|
||||
[def __ratio_abs [link boost_ratio.reference.std.ratio_hpp.ratio_arithmetic `ratio_abs`]]
|
||||
[def __ratio_sign [link boost_ratio.reference.std.ratio_hpp.ratio_arithmetic `ratio_sign`]]
|
||||
[def __ratio_gcd [link boost_ratio.reference.std.ratio_hpp.ratio_arithmetic `ratio_gcd`]]
|
||||
[def __ratio_lcm [link boost_ratio.reference.std.ratio_hpp.ratio_arithmetic `ratio_lcm`]]
|
||||
|
||||
|
||||
[template ratio_si_typedefs[link_text] [link boost_ratio.reference.ratio_hpp.ratio_si_typedefs [link_text]]]
|
||||
[def __atto [link boost_ratio.reference.ratio_hpp.ratio_si_typedefs `atto`]]
|
||||
[def __femto [link boost_ratio.reference.ratio_hpp.ratio_si_typedefs `femto`]]
|
||||
[def __pico [link boost_ratio.reference.ratio_hpp.ratio_si_typedefs `pico`]]
|
||||
[def __nano [link boost_ratio.reference.ratio_hpp.ratio_si_typedefs `nano`]]
|
||||
[def __micro [link boost_ratio.reference.ratio_hpp.ratio_si_typedefs `micro`]]
|
||||
[def __milli [link boost_ratio.reference.ratio_hpp.ratio_si_typedefs `milli`]]
|
||||
[def __centi [link boost_ratio.reference.ratio_hpp.ratio_si_typedefs `centi`]]
|
||||
[def __deci [link boost_ratio.reference.ratio_hpp.ratio_si_typedefs `deci`]]
|
||||
[def __deca [link boost_ratio.reference.ratio_hpp.ratio_si_typedefs `deca`]]
|
||||
[def __hecto [link boost_ratio.reference.ratio_hpp.ratio_si_typedefs `hecto`]]
|
||||
[def __kilo [link boost_ratio.reference.ratio_hpp.ratio_si_typedefs `kilo`]]
|
||||
[def __mega [link boost_ratio.reference.ratio_hpp.ratio_si_typedefs `mega`]]
|
||||
[def __giga [link boost_ratio.reference.ratio_hpp.ratio_si_typedefs `giga`]]
|
||||
[def __tera [link boost_ratio.reference.ratio_hpp.ratio_si_typedefs `tera`]]
|
||||
[def __peta [link boost_ratio.reference.ratio_hpp.ratio_si_typedefs `peta`]]
|
||||
[def __exa [link boost_ratio.reference.ratio_hpp.ratio_si_typedefs `exa`]]
|
||||
[template ratio_comparison[link_text] [link boost_ratio.reference.std.ratio_hpp.ratio_comparison [link_text]]]
|
||||
[def __ratio_equal [link boost_ratio.reference.std.ratio_hpp.ratio_comparison `ratio_equal`]]
|
||||
[def __ratio_not_equal [link boost_ratio.reference.std.ratio_hpp.ratio_comparison `ratio_not_equal`]]
|
||||
[def __ratio_less [link boost_ratio.reference.std.ratio_hpp.ratio_comparison `ratio_less`]]
|
||||
[def __ratio_less_equal [link boost_ratio.reference.std.ratio_hpp.ratio_comparison `ratio_less_equal`]]
|
||||
[def __ratio_greater [link boost_ratio.reference.std.ratio_hpp.ratio_comparison `ratio_greater`]]
|
||||
[def __ratio_greater_equal [link boost_ratio.reference.std.ratio_hpp.ratio_comparison `ratio_greater_equal`]]
|
||||
|
||||
|
||||
[template ratio_si_typedefs[link_text] [link boost_ratio.reference.std.ratio_hpp.ratio_si_typedefs [link_text]]]
|
||||
[def __atto [link boost_ratio.reference.std.ratio_hpp.ratio_si_typedefs `atto`]]
|
||||
[def __femto [link boost_ratio.reference.std.ratio_hpp.ratio_si_typedefs `femto`]]
|
||||
[def __pico [link boost_ratio.reference.std.ratio_hpp.ratio_si_typedefs `pico`]]
|
||||
[def __nano [link boost_ratio.reference.std.ratio_hpp.ratio_si_typedefs `nano`]]
|
||||
[def __micro [link boost_ratio.reference.std.ratio_hpp.ratio_si_typedefs `micro`]]
|
||||
[def __milli [link boost_ratio.reference.std.ratio_hpp.ratio_si_typedefs `milli`]]
|
||||
[def __centi [link boost_ratio.reference.std.ratio_hpp.ratio_si_typedefs `centi`]]
|
||||
[def __deci [link boost_ratio.reference.std.ratio_hpp.ratio_si_typedefs `deci`]]
|
||||
[def __deca [link boost_ratio.reference.std.ratio_hpp.ratio_si_typedefs `deca`]]
|
||||
[def __hecto [link boost_ratio.reference.std.ratio_hpp.ratio_si_typedefs `hecto`]]
|
||||
[def __kilo [link boost_ratio.reference.std.ratio_hpp.ratio_si_typedefs `kilo`]]
|
||||
[def __mega [link boost_ratio.reference.std.ratio_hpp.ratio_si_typedefs `mega`]]
|
||||
[def __giga [link boost_ratio.reference.std.ratio_hpp.ratio_si_typedefs `giga`]]
|
||||
[def __tera [link boost_ratio.reference.std.ratio_hpp.ratio_si_typedefs `tera`]]
|
||||
[def __peta [link boost_ratio.reference.std.ratio_hpp.ratio_si_typedefs `peta`]]
|
||||
[def __exa [link boost_ratio.reference.std.ratio_hpp.ratio_si_typedefs `exa`]]
|
||||
|
||||
[template mu[]'''μ'''] [/ µ Greek small letter mu]
|
||||
|
||||
[def __Rational_Constant [link boost_ratio.reference.rational_constant Rational Constant]]
|
||||
[def __Rational_Constant [link boost_ratio.reference.mpl.rational_constant Rational Constant]]
|
||||
|
||||
|
||||
[/warning Ratio is not part of the Boost libraries.]
|
||||
@ -621,6 +625,10 @@ Finally, we can exercise what we've created, even using custom time durations (`
|
||||
[section:reference Reference ]
|
||||
[/=================]
|
||||
|
||||
[/=================================================]
|
||||
[section:std C++0x Recommendation]
|
||||
[/=================================================]
|
||||
|
||||
[/=================================================]
|
||||
[section:ratio_ratio_hpp Header `<boost/ratio.hpp>`]
|
||||
[/=================================================]
|
||||
@ -976,19 +984,29 @@ The [@http://en.wikipedia.org/wiki/SI_prefix#List_of_SI_prefixes International S
|
||||
[endsect]
|
||||
|
||||
|
||||
[section:limitations Limitations and Extensions]
|
||||
[section:limitations Limitations]
|
||||
|
||||
The following are limitations of Boost.Ratio relative to the specification in the C++0x draft standard:
|
||||
|
||||
* Four of the SI units typedefs -- `yocto`, `zepto`, `zetta`, and `yotta` -- are to be conditionally supported, if the range of `intmax_t` allows, but are not supported by __Boost_Ratio.
|
||||
* Ratio values should be of type static `constexpr intmax_t` (see [@http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3135.html#1122 Ratio values should be constexpr]), but for compiler not supporting `constexpr` today, __Boost_Ratio uses `static const intmax_t` instead.
|
||||
* Rational arithmetic should use template aliases (see [@http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3134.html#921 Rational Arithmetic should use template aliases]), but those are not available in C++03, so inheritance is used instead.
|
||||
|
||||
The current implementation extends the requirements of the C++0x draft standard by making the copy constructor and copy assignment operator have the same normalized form (see [@http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3133.html#1281 copy constructor and assignment between ratios having the same normalized form]).
|
||||
|
||||
[endsect]
|
||||
|
||||
[section:extensions Extensions]
|
||||
|
||||
When __BOOST_RATIO_EXTENSIONS is defined __Boost_Ratio provides the following extensions:
|
||||
|
||||
* Extends the requirements of the C++0x draft standard by making the copy constructor and copy assignment operator have the same normalized form (see [@http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3133.html#1281 copy constructor and assignment between ratios having the same normalized form]).
|
||||
* More C++ standard like metafunctions applied to ratio types, like __static_abs or __static_negate.
|
||||
* An __Boost_Mpl rational constant concept and the associated __Boost_Mpl arithmetic and comparison specializations including __numeric_cast, __plus, __equal_to between others.
|
||||
|
||||
[endsect]
|
||||
|
||||
[endsect]
|
||||
[endsect]
|
||||
[section:io Ratio I/O]
|
||||
|
||||
[/=======================================================]
|
||||
[section:ratio_io_hpp Header `<boost/ratio/ratio_io.hpp>`]
|
||||
@ -1006,6 +1024,8 @@ This header provides `ratio_string<>` which can generate a textual representatio
|
||||
}
|
||||
|
||||
[endsect]
|
||||
[endsect]
|
||||
[section:mpl Rational Constant]
|
||||
|
||||
[/===========================================]
|
||||
[section:rational_constant Rational Constant Concept]
|
||||
@ -1052,10 +1072,10 @@ In the following table and subsequent specifications, r is a model of __Rational
|
||||
[endsect]
|
||||
|
||||
[/===========================================]
|
||||
[section:rational_constant_hpp Header `<boost/ratio/rational_constant.hpp>`]
|
||||
[section:rational_constant_hpp Header `<boost/ratio/mpl/rational_constant.hpp>`]
|
||||
[/===========================================]
|
||||
|
||||
This header includes all the rational constant related header files
|
||||
This header includes all the rational constant related header files
|
||||
|
||||
#include <boost/ratio/mpl/rational_c_tag.hpp>
|
||||
#include <boost/ratio/mpl/numeric_cast.hpp>
|
||||
@ -1103,7 +1123,7 @@ A Integral Constant is seen as a ratio with numerator the Integral Constant valu
|
||||
};
|
||||
};
|
||||
|
||||
[endsect]
|
||||
[endsect] [/section:numeric_cast `mpl::numeric_cast<>` Specialization]
|
||||
|
||||
[endsect] [/section:mpl_numeric_cast_hpp Header `<boost/ratio/mpl/numeric_cast.hpp>`]
|
||||
|
||||
@ -1132,7 +1152,6 @@ This header includes all the rational constant arithmetic MPL specializations.
|
||||
|
||||
namespace boost {
|
||||
namespace mpl {
|
||||
|
||||
template<>
|
||||
struct plus_impl< rational_c_tag,rational_c_tag >;
|
||||
}
|
||||
@ -1140,19 +1159,236 @@ This header includes all the rational constant arithmetic MPL specializations.
|
||||
|
||||
[section:plus_impl `mpl::plus_impl<>` Specialization]
|
||||
|
||||
The specialization relays on the __ratio_add template class.
|
||||
|
||||
template<>
|
||||
struct plus_impl< rational_c_tag,rational_c_tag >
|
||||
{
|
||||
template< typename R1, typename R2 > struct apply
|
||||
: ratio_add<R1, R2>
|
||||
: __ratio_add<R1, R2>
|
||||
{
|
||||
};
|
||||
};
|
||||
|
||||
[endsect]
|
||||
|
||||
[endsect] [/section:plus_impl `mpl::plus_impl<>` Specialization]
|
||||
[endsect] [/section:mpl_plus_hpp Header `<boost/ratio/mpl/plus.hpp>`]
|
||||
|
||||
[/===========================================]
|
||||
[section:mpl_minus_hpp Header `<boost/ratio/mpl/minus.hpp>`]
|
||||
[/===========================================]
|
||||
|
||||
namespace boost {
|
||||
namespace mpl {
|
||||
template<>
|
||||
struct minus_impl< rational_c_tag,rational_c_tag >;
|
||||
}
|
||||
}
|
||||
|
||||
[section:minus_impl `mpl::minus_impl<>` Specialization]
|
||||
|
||||
The specialization relays on the __ratio_subtract template class.
|
||||
|
||||
template<>
|
||||
struct plus_impl< rational_c_tag,rational_c_tag >
|
||||
{
|
||||
template< typename R1, typename R2 > struct apply
|
||||
: __ratio_subtract<R1, R2>
|
||||
{
|
||||
};
|
||||
};
|
||||
|
||||
[endsect] [/section:minus_impl `mpl::minus_impl<>` Specialization]
|
||||
[endsect] [/section:mpl_minus_hpp Header `<boost/ratio/mpl/minus.hpp>`]
|
||||
|
||||
[/===========================================]
|
||||
[section:mpl_times_hpp Header `<boost/ratio/mpl/times.hpp>`]
|
||||
[/===========================================]
|
||||
|
||||
namespace boost {
|
||||
namespace mpl {
|
||||
template<>
|
||||
struct times_impl< rational_c_tag,rational_c_tag >;
|
||||
}
|
||||
}
|
||||
|
||||
[section:times_impl `mpl::times_impl<>` Specialization]
|
||||
|
||||
The specialization relays on the __ratio_multiply template class.
|
||||
|
||||
template<>
|
||||
struct times_impl< rational_c_tag,rational_c_tag >
|
||||
{
|
||||
template< typename R1, typename R2 > struct apply
|
||||
: __ratio_multiply<R1, R2>
|
||||
{
|
||||
};
|
||||
};
|
||||
|
||||
[endsect] [/section:times_impl `mpl::times_impl<>` Specialization]
|
||||
[endsect] [/section:mpl_times_hpp Header `<boost/ratio/mpl/times.hpp>`]
|
||||
|
||||
[/===========================================]
|
||||
[section:mpl_divides_hpp Header `<boost/ratio/mpl/divides.hpp>`]
|
||||
[/===========================================]
|
||||
|
||||
namespace boost {
|
||||
namespace mpl {
|
||||
template<>
|
||||
struct divides_impl< rational_c_tag,rational_c_tag >;
|
||||
}
|
||||
}
|
||||
|
||||
[section:divides_impl `mpl::divides_impl<>` Specialization]
|
||||
|
||||
The specialization relays on the __ratio_divide template class.
|
||||
|
||||
template<>
|
||||
struct divides_impl< rational_c_tag,rational_c_tag >
|
||||
{
|
||||
template< typename R1, typename R2 > struct apply
|
||||
: __ratio_divide<R1, R2>
|
||||
{
|
||||
};
|
||||
};
|
||||
|
||||
[endsect] [/section:divides_impl `mpl::divides_impl<>` Specialization]
|
||||
[endsect] [/section:mpl_divides_hpp Header `<boost/ratio/mpl/divides.hpp>`]
|
||||
|
||||
[/===========================================]
|
||||
[section:mpl_gcd_hpp Header `<boost/ratio/mpl/gcd.hpp>`]
|
||||
[/===========================================]
|
||||
|
||||
namespace boost {
|
||||
namespace mpl {
|
||||
template<>
|
||||
struct gcd_impl< rational_c_tag,rational_c_tag >;
|
||||
}
|
||||
}
|
||||
|
||||
[section:gcd_impl `mpl::gcd_impl<>` Specialization]
|
||||
|
||||
The specialization relays on the __ratio_gcd template class.
|
||||
|
||||
template<>
|
||||
struct gcd_impl< rational_c_tag,rational_c_tag >
|
||||
{
|
||||
template< typename R1, typename R2 > struct apply
|
||||
: __ratio_gcd<R1, R2>
|
||||
{
|
||||
};
|
||||
};
|
||||
|
||||
[endsect] [/section:gcd_impl `mpl::gcd_impl<>` Specialization]
|
||||
[endsect] [/section:mpl_gcd_hpp Header `<boost/ratio/mpl/gcd.hpp>`]
|
||||
|
||||
[/===========================================]
|
||||
[section:mpl_lcm_hpp Header `<boost/ratio/mpl/lcm.hpp>`]
|
||||
[/===========================================]
|
||||
|
||||
namespace boost {
|
||||
namespace mpl {
|
||||
template<>
|
||||
struct lcm_impl< rational_c_tag,rational_c_tag >;
|
||||
}
|
||||
}
|
||||
|
||||
[section:lcm_impl `mpl::lcm_impl<>` Specialization]
|
||||
|
||||
The specialization relays on the __ratio_lcm template class.
|
||||
|
||||
template<>
|
||||
struct lcm_impl< rational_c_tag,rational_c_tag >
|
||||
{
|
||||
template< typename R1, typename R2 > struct apply
|
||||
: __ratio_lcm<R1, R2>
|
||||
{
|
||||
};
|
||||
};
|
||||
|
||||
[endsect] [/section:lcm_impl `mpl::lcm_impl<>` Specialization]
|
||||
[endsect] [/section:mpl_lcm_hpp Header `<boost/ratio/mpl/lcm.hpp>`]
|
||||
|
||||
[/===========================================]
|
||||
[section:mpl_negate_hpp Header `<boost/ratio/mpl/negate.hpp>`]
|
||||
[/===========================================]
|
||||
|
||||
namespace boost {
|
||||
namespace mpl {
|
||||
template<>
|
||||
struct negate_impl< rational_c_tag >;
|
||||
}
|
||||
}
|
||||
|
||||
[section:negate_impl `mpl::negate_impl<>` Specialization]
|
||||
|
||||
The specialization relays on the __ratio_negate template class.
|
||||
|
||||
template<>
|
||||
struct negate_impl< rational_c_tag >
|
||||
{
|
||||
template< typename R > struct apply
|
||||
: __ratio_negate<R>
|
||||
{
|
||||
};
|
||||
};
|
||||
|
||||
[endsect] [/section:negate_impl `mpl::negate_impl<>` Specialization]
|
||||
[endsect] [/section:mpl_negate_hpp Header `<boost/ratio/mpl/negate.hpp>`]
|
||||
|
||||
[/===========================================]
|
||||
[section:mpl_abs_hpp Header `<boost/ratio/mpl/abs.hpp>`]
|
||||
[/===========================================]
|
||||
|
||||
namespace boost {
|
||||
namespace mpl {
|
||||
template<>
|
||||
struct abs_impl< rational_c_tag >;
|
||||
}
|
||||
}
|
||||
|
||||
[section:abs_impl `mpl::abs_impl<>` Specialization]
|
||||
|
||||
The specialization relays on the __ratio_abs template class.
|
||||
|
||||
template<>
|
||||
struct abs_impl< rational_c_tag >
|
||||
{
|
||||
template< typename R > struct apply
|
||||
: __ratio_abs<R>
|
||||
{
|
||||
};
|
||||
};
|
||||
|
||||
[endsect] [/section:abs_impl `mpl::abs_impl<>` Specialization]
|
||||
[endsect] [/section:mpl_abs_hpp Header `<boost/ratio/mpl/abs.hpp>`]
|
||||
|
||||
[/===========================================]
|
||||
[section:mpl_sign_hpp Header `<boost/ratio/mpl/sign.hpp>`]
|
||||
[/===========================================]
|
||||
|
||||
namespace boost {
|
||||
namespace mpl {
|
||||
template<>
|
||||
struct sign_impl< rational_c_tag >;
|
||||
}
|
||||
}
|
||||
|
||||
[section:sign_impl `mpl::sign_impl<>` Specialization]
|
||||
|
||||
The specialization relays on the __ratio_sign template class.
|
||||
|
||||
template<>
|
||||
struct sign_impl< rational_c_tag >
|
||||
{
|
||||
template< typename R > struct apply
|
||||
: __ratio_sign<R>
|
||||
{
|
||||
};
|
||||
};
|
||||
|
||||
[endsect] [/section:sign_impl `mpl::sign_impl<>` Specialization]
|
||||
[endsect] [/section:mpl_sign_hpp Header `<boost/ratio/mpl/sign.hpp>`]
|
||||
|
||||
[/===========================================]
|
||||
[section:mpl_comparison_hpp Header `<boost/ratio/mpl/comparison.hpp>`]
|
||||
[/===========================================]
|
||||
@ -1175,28 +1411,165 @@ This header includes all the rational constant comparison MPL specializations.
|
||||
|
||||
namespace boost {
|
||||
namespace mpl {
|
||||
|
||||
template<>
|
||||
struct equal_to_impl< rational_c_tag,rational_c_tag >;
|
||||
template<>
|
||||
struct equal_to_impl< rational_c_tag,rational_c_tag >;
|
||||
}
|
||||
}
|
||||
|
||||
[section:equal_to `mpl::equal_to_impl<>` Specialization]
|
||||
|
||||
The specialization relays on the __ratio_equal template class.
|
||||
|
||||
template<>
|
||||
struct equal_to_impl< rational_c_tag,rational_c_tag >
|
||||
{
|
||||
template< typename R1, typename R2 > struct apply
|
||||
: ratio_equal<R1, R2>
|
||||
: __ratio_equal<R1, R2>
|
||||
{
|
||||
};
|
||||
};
|
||||
|
||||
[endsect]
|
||||
|
||||
[endsect] [/section:equal_to `mpl::equal_to_impl<>` Specialization]
|
||||
[endsect] [/section:mpl_equal_to_hpp Header `<boost/ratio/mpl/equal_to.hpp>`]
|
||||
|
||||
[/===========================================]
|
||||
[section:mpl_not_equal_to_hpp Header `<boost/ratio/mpl/not_equal_to.hpp>`]
|
||||
[/===========================================]
|
||||
|
||||
namespace boost {
|
||||
namespace mpl {
|
||||
template<>
|
||||
struct not_equal_to_impl< rational_c_tag,rational_c_tag >;
|
||||
}
|
||||
}
|
||||
|
||||
[section:not_equal_to `mpl::not_equal_to_impl<>` Specialization]
|
||||
|
||||
The specialization relays on the __ratio_not_equal template class.
|
||||
|
||||
template<>
|
||||
struct not_equal_to_impl< rational_c_tag,rational_c_tag >
|
||||
{
|
||||
template< typename R1, typename R2 > struct apply
|
||||
: __ratio_not_equal<R1, R2>
|
||||
{
|
||||
};
|
||||
};
|
||||
|
||||
[endsect] [/section:not_equal_to `mpl::not_equal_to_impl<>` Specialization]
|
||||
[endsect] [/section:mpl_not_equal_to_hpp Header `<boost/ratio/mpl/not_equal_to.hpp>`]
|
||||
|
||||
[/===========================================]
|
||||
[section:mpl_less_hpp Header `<boost/ratio/mpl/less.hpp>`]
|
||||
[/===========================================]
|
||||
|
||||
namespace boost {
|
||||
namespace mpl {
|
||||
template<>
|
||||
struct less_impl< rational_c_tag,rational_c_tag >;
|
||||
}
|
||||
}
|
||||
|
||||
[section:less `mpl::less_impl<>` Specialization]
|
||||
|
||||
The specialization relays on the __ratio_less template class.
|
||||
|
||||
template<>
|
||||
struct less_impl< rational_c_tag,rational_c_tag >
|
||||
{
|
||||
template< typename R1, typename R2 > struct apply
|
||||
: ratio_less<R1, R2>
|
||||
{
|
||||
};
|
||||
};
|
||||
|
||||
[endsect] [/section:less `mpl::less_impl<>` Specialization]
|
||||
[endsect] [/section:mpl_less_hpp Header `<boost/ratio/mpl/less.hpp>`]
|
||||
|
||||
[/===========================================]
|
||||
[section:mpl_less_equal_hpp Header `<boost/ratio/mpl/less_equal.hpp>`]
|
||||
[/===========================================]
|
||||
|
||||
namespace boost {
|
||||
namespace mpl {
|
||||
template<>
|
||||
struct less_equal_impl< rational_c_tag,rational_c_tag >;
|
||||
}
|
||||
}
|
||||
|
||||
[section:less_equal `mpl::less_equal_impl<>` Specialization]
|
||||
|
||||
The specialization relays on the __ratio_less_equal template class.
|
||||
|
||||
template<>
|
||||
struct less_equal_impl< rational_c_tag,rational_c_tag >
|
||||
{
|
||||
template< typename R1, typename R2 > struct apply
|
||||
: ratio_less_equal<R1, R2>
|
||||
{
|
||||
};
|
||||
};
|
||||
|
||||
[endsect] [/section:less_equal `mpl::less_equal_impl<>` Specialization]
|
||||
[endsect] [/section:mpl_less_equal_hpp Header `<boost/ratio/mpl/less_equal.hpp>`]
|
||||
|
||||
[/===========================================]
|
||||
[section:mpl_greater_hpp Header `<boost/ratio/mpl/greater.hpp>`]
|
||||
[/===========================================]
|
||||
|
||||
namespace boost {
|
||||
namespace mpl {
|
||||
template<>
|
||||
struct greater_impl< rational_c_tag,rational_c_tag >;
|
||||
}
|
||||
}
|
||||
|
||||
[section:greater `mpl::greater_impl<>` Specialization]
|
||||
|
||||
The specialization relays on the __ratio_greater template class.
|
||||
|
||||
template<>
|
||||
struct greater_impl< rational_c_tag,rational_c_tag >
|
||||
{
|
||||
template< typename R1, typename R2 > struct apply
|
||||
: ratio_greater<R1, R2>
|
||||
{
|
||||
};
|
||||
};
|
||||
|
||||
[endsect] [/section:greater `mpl::greater_impl<>` Specialization]
|
||||
[endsect] [/section:mpl_greater_hpp Header `<boost/ratio/mpl/greater.hpp>`]
|
||||
|
||||
|
||||
[/===========================================]
|
||||
[section:mpl_greater_equal_hpp Header `<boost/ratio/mpl/greater_equal.hpp>`]
|
||||
[/===========================================]
|
||||
|
||||
namespace boost {
|
||||
namespace mpl {
|
||||
template<>
|
||||
struct greater_equal_impl< rational_c_tag,rational_c_tag >;
|
||||
}
|
||||
}
|
||||
|
||||
[section:greater_equal `mpl::greater_equal_impl<>` Specialization]
|
||||
|
||||
The specialization relays on the __ratio_greater_equal template class.
|
||||
|
||||
template<>
|
||||
struct greater_equal_impl< rational_c_tag,rational_c_tag >
|
||||
{
|
||||
template< typename R1, typename R2 > struct apply
|
||||
: ratio_greater_equal<R1, R2>
|
||||
{
|
||||
};
|
||||
};
|
||||
|
||||
[endsect] [/section:greater_equal `mpl::greater_equal_impl<>` Specialization]
|
||||
[endsect] [/section:mpl_greater_equal_hpp Header `<boost/ratio/mpl/greater_equal.hpp>`]
|
||||
|
||||
|
||||
[endsect]
|
||||
[endsect]
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user