HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
detail::basic_data< T > Struct Template Reference

#include <format.h>

Public Types

using digit_pair = char[2]
 

Static Public Attributes

static const uint64_t powers_of_10_64 []
 
static const uint32_t zero_or_powers_of_10_32_new []
 
static const uint64_t zero_or_powers_of_10_64_new []
 
static const uint64_t grisu_pow10_significands []
 
static const int16_t grisu_pow10_exponents []
 
static const
divtest_table_entry< uint32_t > 
divtest_table_for_pow5_32 []
 
static const
divtest_table_entry< uint64_t > 
divtest_table_for_pow5_64 []
 
static const uint64_t dragonbox_pow10_significands_64 []
 
static const uint128_wrapper dragonbox_pow10_significands_128 []
 
static const uint64_t log10_2_significand = 0x4d104d427de7fbcc
 
static const uint64_t powers_of_5_64 []
 
static const uint32_t dragonbox_pow10_recovery_errors []
 
static const digit_pair digits []
 
static const char hex_digits [] = "0123456789abcdef"
 
static const char foreground_color [] = "\x1b[38;2;"
 
static const char background_color [] = "\x1b[48;2;"
 
static const char reset_color [5] = "\x1b[0m"
 
static const wchar_t wreset_color [5] = L"\x1b[0m"
 
static const char signs [] = {0, '-', '+', ' '}
 
static const char left_padding_shifts [5] = {31, 31, 0, 1, 0}
 
static const char right_padding_shifts [5] = {0, 31, 0, 1, 0}
 
static const uint32_t zero_or_powers_of_10_32 []
 
static const uint64_t zero_or_powers_of_10_64 []
 

Detailed Description

template<typename T = void>
struct detail::basic_data< T >

Definition at line 867 of file format.h.

Member Typedef Documentation

template<typename T = void>
using detail::basic_data< T >::digit_pair = char[2]

Definition at line 884 of file format.h.

Member Data Documentation

template<typename T = void>
const char detail::basic_data< T >::background_color = "\x1b[48;2;"
static

Definition at line 888 of file format.h.

template<typename T = void>
const basic_data< T >::digit_pair detail::basic_data< T >::digits
static
Initial value:
= {
{'0', '0'}, {'0', '1'}, {'0', '2'}, {'0', '3'}, {'0', '4'}, {'0', '5'},
{'0', '6'}, {'0', '7'}, {'0', '8'}, {'0', '9'}, {'1', '0'}, {'1', '1'},
{'1', '2'}, {'1', '3'}, {'1', '4'}, {'1', '5'}, {'1', '6'}, {'1', '7'},
{'1', '8'}, {'1', '9'}, {'2', '0'}, {'2', '1'}, {'2', '2'}, {'2', '3'},
{'2', '4'}, {'2', '5'}, {'2', '6'}, {'2', '7'}, {'2', '8'}, {'2', '9'},
{'3', '0'}, {'3', '1'}, {'3', '2'}, {'3', '3'}, {'3', '4'}, {'3', '5'},
{'3', '6'}, {'3', '7'}, {'3', '8'}, {'3', '9'}, {'4', '0'}, {'4', '1'},
{'4', '2'}, {'4', '3'}, {'4', '4'}, {'4', '5'}, {'4', '6'}, {'4', '7'},
{'4', '8'}, {'4', '9'}, {'5', '0'}, {'5', '1'}, {'5', '2'}, {'5', '3'},
{'5', '4'}, {'5', '5'}, {'5', '6'}, {'5', '7'}, {'5', '8'}, {'5', '9'},
{'6', '0'}, {'6', '1'}, {'6', '2'}, {'6', '3'}, {'6', '4'}, {'6', '5'},
{'6', '6'}, {'6', '7'}, {'6', '8'}, {'6', '9'}, {'7', '0'}, {'7', '1'},
{'7', '2'}, {'7', '3'}, {'7', '4'}, {'7', '5'}, {'7', '6'}, {'7', '7'},
{'7', '8'}, {'7', '9'}, {'8', '0'}, {'8', '1'}, {'8', '2'}, {'8', '3'},
{'8', '4'}, {'8', '5'}, {'8', '6'}, {'8', '7'}, {'8', '8'}, {'8', '9'},
{'9', '0'}, {'9', '1'}, {'9', '2'}, {'9', '3'}, {'9', '4'}, {'9', '5'},
{'9', '6'}, {'9', '7'}, {'9', '8'}, {'9', '9'}}

Definition at line 885 of file format.h.

template<typename T = void>
const divtest_table_entry< uint32_t > detail::basic_data< T >::divtest_table_for_pow5_32
static
Initial value:
=
{{0x00000001, 0xffffffff}, {0xcccccccd, 0x33333333},
{0xc28f5c29, 0x0a3d70a3}, {0x26e978d5, 0x020c49ba},
{0x3afb7e91, 0x0068db8b}, {0x0bcbe61d, 0x0014f8b5},
{0x68c26139, 0x000431bd}, {0xae8d46a5, 0x0000d6bf},
{0x22e90e21, 0x00002af3}, {0x3a2e9c6d, 0x00000897},
{0x3ed61f49, 0x000001b7}}

Definition at line 873 of file format.h.

template<typename T = void>
const divtest_table_entry< uint64_t > detail::basic_data< T >::divtest_table_for_pow5_64
static
Initial value:
=
{{0x0000000000000001, 0xffffffffffffffff},
{0xcccccccccccccccd, 0x3333333333333333},
{0x8f5c28f5c28f5c29, 0x0a3d70a3d70a3d70},
{0x1cac083126e978d5, 0x020c49ba5e353f7c},
{0xd288ce703afb7e91, 0x0068db8bac710cb2},
{0x5d4e8fb00bcbe61d, 0x0014f8b588e368f0},
{0x790fb65668c26139, 0x000431bde82d7b63},
{0xe5032477ae8d46a5, 0x0000d6bf94d5e57a},
{0xc767074b22e90e21, 0x00002af31dc46118},
{0x8e47ce423a2e9c6d, 0x0000089705f4136b},
{0x4fa7f60d3ed61f49, 0x000001b7cdfd9d7b},
{0x0fee64690c913975, 0x00000057f5ff85e5},
{0x3662e0e1cf503eb1, 0x000000119799812d},
{0xa47a2cf9f6433fbd, 0x0000000384b84d09},
{0x54186f653140a659, 0x00000000b424dc35},
{0x7738164770402145, 0x0000000024075f3d},
{0xe4a4d1417cd9a041, 0x000000000734aca5},
{0xc75429d9e5c5200d, 0x000000000170ef54},
{0xc1773b91fac10669, 0x000000000049c977},
{0x26b172506559ce15, 0x00000000000ec1e4},
{0xd489e3a9addec2d1, 0x000000000002f394},
{0x90e860bb892c8d5d, 0x000000000000971d},
{0x502e79bf1b6f4f79, 0x0000000000001e39},
{0xdcd618596be30fe5, 0x000000000000060b}}

Definition at line 874 of file format.h.

template<typename T = void>
const uint32_t detail::basic_data< T >::dragonbox_pow10_recovery_errors
static
Initial value:
= {
0x50001400, 0x54044100, 0x54014555, 0x55954415, 0x54115555, 0x00000001,
0x50000000, 0x00104000, 0x54010004, 0x05004001, 0x55555544, 0x41545555,
0x54040551, 0x15445545, 0x51555514, 0x10000015, 0x00101100, 0x01100015,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x04450514, 0x45414110,
0x55555145, 0x50544050, 0x15040155, 0x11054140, 0x50111514, 0x11451454,
0x00400541, 0x00000000, 0x55555450, 0x10056551, 0x10054011, 0x55551014,
0x69514555, 0x05151109, 0x00155555}

Definition at line 881 of file format.h.

template<typename T = void>
const uint128_wrapper detail::basic_data< T >::dragonbox_pow10_significands_128
static

Definition at line 876 of file format.h.

template<typename T = void>
const uint64_t detail::basic_data< T >::dragonbox_pow10_significands_64
static
Initial value:
= {
0x81ceb32c4b43fcf5, 0xa2425ff75e14fc32, 0xcad2f7f5359a3b3f,
0xfd87b5f28300ca0e, 0x9e74d1b791e07e49, 0xc612062576589ddb,
0xf79687aed3eec552, 0x9abe14cd44753b53, 0xc16d9a0095928a28,
0xf1c90080baf72cb2, 0x971da05074da7bef, 0xbce5086492111aeb,
0xec1e4a7db69561a6, 0x9392ee8e921d5d08, 0xb877aa3236a4b44a,
0xe69594bec44de15c, 0x901d7cf73ab0acda, 0xb424dc35095cd810,
0xe12e13424bb40e14, 0x8cbccc096f5088cc, 0xafebff0bcb24aaff,
0xdbe6fecebdedd5bf, 0x89705f4136b4a598, 0xabcc77118461cefd,
0xd6bf94d5e57a42bd, 0x8637bd05af6c69b6, 0xa7c5ac471b478424,
0xd1b71758e219652c, 0x83126e978d4fdf3c, 0xa3d70a3d70a3d70b,
0xcccccccccccccccd, 0x8000000000000000, 0xa000000000000000,
0xc800000000000000, 0xfa00000000000000, 0x9c40000000000000,
0xc350000000000000, 0xf424000000000000, 0x9896800000000000,
0xbebc200000000000, 0xee6b280000000000, 0x9502f90000000000,
0xba43b74000000000, 0xe8d4a51000000000, 0x9184e72a00000000,
0xb5e620f480000000, 0xe35fa931a0000000, 0x8e1bc9bf04000000,
0xb1a2bc2ec5000000, 0xde0b6b3a76400000, 0x8ac7230489e80000,
0xad78ebc5ac620000, 0xd8d726b7177a8000, 0x878678326eac9000,
0xa968163f0a57b400, 0xd3c21bcecceda100, 0x84595161401484a0,
0xa56fa5b99019a5c8, 0xcecb8f27f4200f3a, 0x813f3978f8940984,
0xa18f07d736b90be5, 0xc9f2c9cd04674ede, 0xfc6f7c4045812296,
0x9dc5ada82b70b59d, 0xc5371912364ce305, 0xf684df56c3e01bc6,
0x9a130b963a6c115c, 0xc097ce7bc90715b3, 0xf0bdc21abb48db20,
0x96769950b50d88f4, 0xbc143fa4e250eb31, 0xeb194f8e1ae525fd,
0x92efd1b8d0cf37be, 0xb7abc627050305ad, 0xe596b7b0c643c719,
0x8f7e32ce7bea5c6f, 0xb35dbf821ae4f38b, 0xe0352f62a19e306e}

Definition at line 875 of file format.h.

template<typename T = void>
const char detail::basic_data< T >::foreground_color = "\x1b[38;2;"
static

Definition at line 887 of file format.h.

template<typename T = void>
const int16_t detail::basic_data< T >::grisu_pow10_exponents
static
Initial value:
= {
-1220, -1193, -1166, -1140, -1113, -1087, -1060, -1034, -1007, -980, -954,
-927, -901, -874, -847, -821, -794, -768, -741, -715, -688, -661,
-635, -608, -582, -555, -529, -502, -475, -449, -422, -396, -369,
-343, -316, -289, -263, -236, -210, -183, -157, -130, -103, -77,
-50, -24, 3, 30, 56, 83, 109, 136, 162, 189, 216,
242, 269, 295, 322, 348, 375, 402, 428, 455, 481, 508,
534, 561, 588, 614, 641, 667, 694, 720, 747, 774, 800,
827, 853, 880, 907, 933, 960, 986, 1013, 1039, 1066}

Definition at line 872 of file format.h.

template<typename T = void>
const uint64_t detail::basic_data< T >::grisu_pow10_significands
static

Definition at line 871 of file format.h.

template<typename T = void>
const char detail::basic_data< T >::hex_digits = "0123456789abcdef"
static

Definition at line 886 of file format.h.

template<typename T = void>
const char detail::basic_data< T >::left_padding_shifts = {31, 31, 0, 1, 0}
static

Definition at line 892 of file format.h.

template<typename T = void>
const uint64_t detail::basic_data< T >::log10_2_significand = 0x4d104d427de7fbcc
static

Definition at line 878 of file format.h.

template<typename T = void>
const uint64_t detail::basic_data< T >::powers_of_10_64
static
Initial value:
= {
1, FMT_POWERS_OF_10(1), FMT_POWERS_OF_10(1000000000ULL),
10000000000000000000ULL}

Definition at line 868 of file format.h.

template<typename T = void>
const uint64_t detail::basic_data< T >::powers_of_5_64
static
Initial value:
= {
0x0000000000000001, 0x0000000000000005, 0x0000000000000019,
0x000000000000007d, 0x0000000000000271, 0x0000000000000c35,
0x0000000000003d09, 0x000000000001312d, 0x000000000005f5e1,
0x00000000001dcd65, 0x00000000009502f9, 0x0000000002e90edd,
0x000000000e8d4a51, 0x0000000048c27395, 0x000000016bcc41e9,
0x000000071afd498d, 0x0000002386f26fc1, 0x000000b1a2bc2ec5,
0x000003782dace9d9, 0x00001158e460913d, 0x000056bc75e2d631,
0x0001b1ae4d6e2ef5, 0x000878678326eac9, 0x002a5a058fc295ed,
0x00d3c21bcecceda1, 0x0422ca8b0a00a425, 0x14adf4b7320334b9}

Definition at line 880 of file format.h.

template<typename T = void>
const char detail::basic_data< T >::reset_color = "\x1b[0m"
static

Definition at line 889 of file format.h.

template<typename T = void>
const char detail::basic_data< T >::right_padding_shifts = {0, 31, 0, 1, 0}
static

Definition at line 893 of file format.h.

template<typename T = void>
const char detail::basic_data< T >::signs = {0, '-', '+', ' '}
static

Definition at line 891 of file format.h.

template<typename T = void>
const wchar_t detail::basic_data< T >::wreset_color = L"\x1b[0m"
static

Definition at line 890 of file format.h.

template<typename T = void>
const uint32_t detail::basic_data< T >::zero_or_powers_of_10_32
static
Initial value:
= {0,

Definition at line 896 of file format.h.

template<typename T = void>
const uint32_t detail::basic_data< T >::zero_or_powers_of_10_32_new
static
Initial value:
= {
0, 0, FMT_POWERS_OF_10(1)}

Definition at line 869 of file format.h.

template<typename T = void>
const uint64_t detail::basic_data< T >::zero_or_powers_of_10_64
static
Initial value:
= {
0, FMT_POWERS_OF_10(1), FMT_POWERS_OF_10(1000000000ULL),
10000000000000000000ULL}

Definition at line 897 of file format.h.

template<typename T = void>
const uint64_t detail::basic_data< T >::zero_or_powers_of_10_64_new
static
Initial value:
= {
0, 0, FMT_POWERS_OF_10(1), FMT_POWERS_OF_10(1000000000ULL),
10000000000000000000ULL}

Definition at line 870 of file format.h.


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