Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::multiprecision::literals::detail::pack_values< NextChar, CHARS > Struct Template Reference

#include <literals.hpp>

Collaboration diagram for boost::multiprecision::literals::detail::pack_values< NextChar, CHARS >:

Public Types

typedef pack_values< CHARS...>
::type 
recursive_packed_type
 
typedef boost::mpl::if_c
< shift==0, typename
recursive_packed_type::next_type,
recursive_packed_type >::type 
pack_type
 
typedef combine_value_to_pack
< pack_type, value_to_add >
::type 
type
 

Static Public Attributes

static constexpr unsigned chars_per_limb = sizeof(limb_type) * CHAR_BIT / 4
 
static constexpr unsigned shift = ((sizeof...(CHARS)) % chars_per_limb) * 4
 
static constexpr limb_type value_to_add = shift ? hex_value<NextChar>::value << shift : hex_value<NextChar>::value
 

Member Typedef Documentation

template<char NextChar, char... CHARS>
typedef boost::mpl::if_c<shift == 0, typename recursive_packed_type::next_type, recursive_packed_type>::type boost::multiprecision::literals::detail::pack_values< NextChar, CHARS >::pack_type
template<char NextChar, char... CHARS>
typedef pack_values<CHARS...>::type boost::multiprecision::literals::detail::pack_values< NextChar, CHARS >::recursive_packed_type
template<char NextChar, char... CHARS>
typedef combine_value_to_pack<pack_type, value_to_add>::type boost::multiprecision::literals::detail::pack_values< NextChar, CHARS >::type

Member Data Documentation

template<char NextChar, char... CHARS>
constexpr unsigned boost::multiprecision::literals::detail::pack_values< NextChar, CHARS >::chars_per_limb = sizeof(limb_type) * CHAR_BIT / 4
static
template<char NextChar, char... CHARS>
constexpr unsigned boost::multiprecision::literals::detail::pack_values< NextChar, CHARS >::shift = ((sizeof...(CHARS)) % chars_per_limb) * 4
static
template<char NextChar, char... CHARS>
constexpr limb_type boost::multiprecision::literals::detail::pack_values< NextChar, CHARS >::value_to_add = shift ? hex_value<NextChar>::value << shift : hex_value<NextChar>::value
static

The documentation for this struct was generated from the following file: