HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
format-inl.h File Reference
#include <algorithm>
#include <cctype>
#include <cerrno>
#include <climits>
#include <cmath>
#include <cstdarg>
#include <cstring>
#include <cwchar>
#include <exception>
#include <locale>
#include "format.h"
+ Include dependency graph for format-inl.h:

Go to the source code of this file.

Classes

struct  detail::bits< T >
 
struct  detail::boundaries
 
class  detail::fp
 
struct  detail::accumulator
 
class  detail::bigint
 
struct  detail::fixed_handler
 
struct  detail::uint128_wrapper
 
struct  detail::dragonbox::divtest_table_entry< T >
 
struct  detail::dragonbox::cache_accessor< T >
 
struct  detail::dragonbox::cache_accessor< float >
 
struct  detail::dragonbox::cache_accessor< double >
 
struct  formatter< detail::bigint >
 

Namespaces

 detail
 
 detail::digits
 
 detail::dragonbox
 

Macros

#define FMT_SNPRINTF   snprintf
 

Enumerations

enum  detail::round_direction { detail::round_direction::unknown, detail::round_direction::up, detail::round_direction::down }
 
enum  detail::digits::result { detail::digits::more, detail::digits::done, detail::digits::error }
 

Functions

FMT_FUNC void detail::assert_fail (const char *file, int line, const char *message)
 
FMT_FUNC void detail::format_error_code (detail::buffer< char > &out, int error_code, string_view message) FMT_NOEXCEPT
 
FMT_FUNC void detail::report_error (format_func func, int error_code, const char *message) FMT_NOEXCEPT
 
void detail::fwrite_fully (const void *ptr, size_t size, size_t count, FILE *stream)
 
template<typename Char >
FMT_FUNC auto detail::thousands_sep_impl (locale_ref loc) -> thousands_sep_result< Char >
 
template<typename Char >
FMT_FUNC Char detail::decimal_point_impl (locale_ref loc)
 
FMT_FUNC std::system_error vsystem_error (int error_code, string_view format_str, format_args args)
 
template<>
FMT_FUNC int detail::count_digits< 4 > (detail::fallback_uintptr n)
 
template<int SHIFT = 0>
fp detail::normalize (fp value)
 
bool detail::operator== (fp x, fp y)
 
uint64_t detail::multiply (uint64_t lhs, uint64_t rhs)
 
fp detail::operator* (fp x, fp y)
 
fp detail::get_cached_power (int min_exponent, int &pow10_exponent)
 
round_direction detail::get_round_direction (uint64_t divisor, uint64_t remainder, uint64_t error)
 
uint64_t detail::power_of_10_64 (int exp)
 
template<typename Handler >
FMT_INLINE digits::result detail::grisu_gen_digits (fp value, uint64_t error, int &exp, Handler &handler)
 
uint128_wrapper detail::dragonbox::umul128 (uint64_t x, uint64_t y) FMT_NOEXCEPT
 
uint64_t detail::dragonbox::umul128_upper64 (uint64_t x, uint64_t y) FMT_NOEXCEPT
 
uint64_t detail::dragonbox::umul192_upper64 (uint64_t x, uint128_wrapper y) FMT_NOEXCEPT
 
uint32_t detail::dragonbox::umul96_upper32 (uint32_t x, uint64_t y) FMT_NOEXCEPT
 
uint64_t detail::dragonbox::umul192_middle64 (uint64_t x, uint128_wrapper y) FMT_NOEXCEPT
 
uint64_t detail::dragonbox::umul96_lower64 (uint32_t x, uint64_t y) FMT_NOEXCEPT
 
int detail::dragonbox::floor_log10_pow2 (int e) FMT_NOEXCEPT
 
int detail::dragonbox::floor_log2_pow10 (int e) FMT_NOEXCEPT
 
int detail::dragonbox::floor_log10_pow2_minus_log10_4_over_3 (int e) FMT_NOEXCEPT
 
bool detail::dragonbox::divisible_by_power_of_2 (uint32_t x, int exp) FMT_NOEXCEPT
 
bool detail::dragonbox::divisible_by_power_of_2 (uint64_t x, int exp) FMT_NOEXCEPT
 
bool detail::dragonbox::divisible_by_power_of_5 (uint32_t x, int exp) FMT_NOEXCEPT
 
bool detail::dragonbox::divisible_by_power_of_5 (uint64_t x, int exp) FMT_NOEXCEPT
 
template<int N>
bool detail::dragonbox::check_divisibility_and_divide_by_pow5 (uint32_t &n) FMT_NOEXCEPT
 
template<int N>
uint32_t detail::dragonbox::small_division_by_pow10 (uint32_t n) FMT_NOEXCEPT
 
uint32_t detail::dragonbox::divide_by_10_to_kappa_plus_1 (uint32_t n) FMT_NOEXCEPT
 
uint64_t detail::dragonbox::divide_by_10_to_kappa_plus_1 (uint64_t n) FMT_NOEXCEPT
 
template<class T >
bool detail::dragonbox::is_left_endpoint_integer_shorter_interval (int exponent) FMT_NOEXCEPT
 
template<class T >
bool detail::dragonbox::is_endpoint_integer (typename float_info< T >::carrier_uint two_f, int exponent, int minus_k) FMT_NOEXCEPT
 
template<class T >
bool detail::dragonbox::is_center_integer (typename float_info< T >::carrier_uint two_f, int exponent, int minus_k) FMT_NOEXCEPT
 
FMT_INLINE int detail::dragonbox::remove_trailing_zeros (uint32_t &n) FMT_NOEXCEPT
 
FMT_INLINE int detail::dragonbox::remove_trailing_zeros (uint64_t &n) FMT_NOEXCEPT
 
template<class T >
FMT_INLINE decimal_fp< T > detail::dragonbox::shorter_interval_case (int exponent) FMT_NOEXCEPT
 
template<typename T >
decimal_fp< T > detail::dragonbox::to_decimal (T x) FMT_NOEXCEPT
 
template<typename Double >
void detail::fallback_format (Double d, int num_digits, bool binary32, buffer< char > &buf, int &exp10)
 
template<typename T >
int detail::format_float (T value, int precision, float_specs specs, buffer< char > &buf)
 
template<typename T >
int detail::snprintf_float (T value, int precision, float_specs specs, buffer< char > &buf)
 
FMT_FUNC void format_system_error (detail::buffer< char > &out, int error_code, const char *message) FMT_NOEXCEPT
 
FMT_FUNC void report_system_error (int error_code, const char *message) FMT_NOEXCEPT
 
FMT_FUNC std::string vformat (string_view fmt, format_args args)
 
FMT_FUNC void detail::print (std::FILE *f, string_view text)
 
FMT_FUNC void vprint (std::FILE *f, string_view format_str, format_args args)
 
FMT_FUNC void vprint (string_view format_str, format_args args)
 

Macro Definition Documentation

#define FMT_SNPRINTF   snprintf

Definition at line 44 of file format-inl.h.

Function Documentation

FMT_FUNC void format_system_error ( detail::buffer< char > &  out,
int  error_code,
const char *  message 
)

Formats an error message for an error returned by an operating system or a language runtime, for example a file opening error, and writes it to out. The format is the same as the one used by std::system_error(ec, message) where ec is std::error_code(error_code, std::generic_category()}). It is implementation-defined but normally looks like:

.. parsed-literal:: <message>*: *<system-message>*

where *<message>* is the passed message and *<system-message>* is the system message corresponding to the error code. error_code* is a system error code as given by errno.

Definition at line 2542 of file format-inl.h.

FMT_FUNC void report_system_error ( int  error_code,
const char *  message 
)

Definition at line 2557 of file format-inl.h.

FMT_FUNC std::string vformat ( string_view  fmt,
format_args  args 
)

Definition at line 2562 of file format-inl.h.

FMT_FUNC void vprint ( std::FILE *  f,
string_view  format_str,
format_args  args 
)

Definition at line 2598 of file format-inl.h.

FMT_FUNC void vprint ( string_view  format_str,
format_args  args 
)

Definition at line 2615 of file format-inl.h.

FMT_FUNC std::system_error vsystem_error ( int  error_code,
string_view  format_str,
format_args  args 
)

Definition at line 132 of file format-inl.h.