diff options
Diffstat (limited to 'boost/units/quantity.hpp')
-rw-r--r-- | boost/units/quantity.hpp | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/boost/units/quantity.hpp b/boost/units/quantity.hpp index 4fe916dcc4..3cd6682ce4 100644 --- a/boost/units/quantity.hpp +++ b/boost/units/quantity.hpp @@ -680,6 +680,15 @@ struct multiply_typeof_helper< X,quantity<Unit,Y> > typedef quantity<unit_type,value_type> type; }; +/// disambiguate +/// INTERNAL ONLY +template<class Unit, + class Y> +struct multiply_typeof_helper< one,quantity<Unit,Y> > +{ + typedef quantity<Unit,Y> type; +}; + /// quantity times scalar typeof helper /// INTERNAL ONLY template<class Unit, @@ -692,6 +701,15 @@ struct multiply_typeof_helper< quantity<Unit,X>,Y > typedef quantity<unit_type,value_type> type; }; +/// disambiguate +/// INTERNAL ONLY +template<class Unit, + class X> +struct multiply_typeof_helper< quantity<Unit,X>,one > +{ + typedef quantity<Unit,X> type; +}; + /// unit times quantity typeof helper /// INTERNAL ONLY template<class Unit, @@ -767,6 +785,15 @@ struct divide_typeof_helper< X,quantity<Unit,Y> > typedef quantity<unit_type,value_type> type; }; +/// disambiguate +/// INTERNAL ONLY +template<class Unit, + class Y> +struct divide_typeof_helper< one,quantity<Unit,Y> > +{ + typedef quantity<Unit,Y> type; +}; + /// quantity divided by scalar typeof helper /// INTERNAL ONLY template<class Unit, @@ -779,6 +806,15 @@ struct divide_typeof_helper< quantity<Unit,X>,Y > typedef quantity<unit_type,value_type> type; }; +/// disambiguate +/// INTERNAL ONLY +template<class Unit, + class X> +struct divide_typeof_helper< quantity<Unit,X>,one > +{ + typedef quantity<Unit,X> type; +}; + /// unit divided by quantity typeof helper /// INTERNAL ONLY template<class Unit, |