|
template<typename T > |
using | is_exotic_char = bool_constant<!std::is_same< T, char >::value > |
|
template<size_t... N> |
using | index_sequence = integer_sequence< size_t, N... > |
|
template<size_t N> |
using | make_index_sequence = make_integer_sequence< size_t, N > |
|
template<typename T > |
using | tuple_index_sequence = make_index_sequence< std::tuple_size< T >::value > |
|
template<typename Range > |
using | range_reference_type = decltype(*detail::range_begin(std::declval< Range & >())) |
|
template<typename Range > |
using | uncvref_type = remove_cvref_t< range_reference_type< Range > > |
|
template<typename Char , typename Element > |
using | range_formatter_type = formatter< remove_cvref_t< decltype(range_mapper< buffer_context< Char > >{}.map(std::declval< Element >()))>, Char > |
|
template<typename R > |
using | maybe_const_range = conditional_t< has_const_begin_end< R >::value, const R, R > |
|
template<range_format K> |
using | range_format_constant = std::integral_constant< range_format, K > |
|
using | uint128_t = conditional_t< FMT_USE_INT128, uint128_opt, uint128_fallback > |
|
using | uintptr_t = uint128_t |
|
template<typename T > |
using | iterator_t = decltype(std::begin(std::declval< T & >())) |
|
template<typename T > |
using | sentinel_t = decltype(std::end(std::declval< T & >())) |
|
template<typename OutputIt > |
using | reserve_iterator = remove_reference_t< decltype(reserve(std::declval< OutputIt & >(), 0))> |
|
template<typename T > |
using | is_signed = std::integral_constant< bool, std::numeric_limits< T >::is_signed||std::is_same< T, int128_opt >::value > |
|
template<typename T > |
using | is_integer = bool_constant< is_integral< T >::value &&!std::is_same< T, bool >::value &&!std::is_same< T, char >::value &&!std::is_same< T, wchar_t >::value > |
|
using | float128 = void |
|
template<typename T > |
using | is_float128 = std::is_same< T, float128 > |
|
template<typename T > |
using | is_floating_point = bool_constant< std::is_floating_point< T >::value||is_float128< T >::value > |
|
template<typename T > |
using | uint32_or_64_or_128_t = conditional_t< num_bits< T >()<=32 &&!FMT_REDUCE_INT_INSTANTIATIONS, uint32_t, conditional_t< num_bits< T >()<=64, uint64_t, uint128_t > > |
|
template<typename T > |
using | uint64_or_128_t = conditional_t< num_bits< T >()<=64, uint64_t, uint128_t > |
|
using | fp = basic_fp< unsigned long long > |
|
template<typename T , bool doublish = num_bits<T>() == num_bits<double>()> |
using | convert_float_result = conditional_t< std::is_same< T, float >::value||doublish, double, T > |
|
template<typename Char > |
using | make_unsigned_char = typename conditional_t< std::is_integral< Char >::value, std::make_unsigned< Char >, type_identity< uint32_t > >::type |
|
using | format_func = void(*)(detail::buffer< char > &, int, const char *) |
|
template<typename T > |
using | buffer_appender = conditional_t< std::is_same< T, char >::value, appender, std::back_insert_iterator< buffer< T > > > |
|
using | long_type = conditional_t< long_short, int, long long > |
|
using | ulong_type = conditional_t< long_short, unsigned, unsigned long long > |
|
template<typename T > |
using | format_as_t = typename format_as_result< T >::type |
|
template<typename T , typename Context > |
using | mapped_type_constant = type_constant< decltype(arg_mapper< Context >().map(std::declval< const T & >())), typename Context::char_type > |
|
template<typename... > |
using | void_t = void |
|
template<typename BasicJsonType > |
using | parser_callback_t = std::function< bool(int, parse_event_t, BasicJsonType &)> |
|
using | contiguous_bytes_input_adapter = decltype(input_adapter(std::declval< const char * >(), std::declval< const char * >())) |
|
template<typename StringType , typename Arg > |
using | string_can_append = decltype(std::declval< StringType & >().append(std::declval< Arg && >())) |
|
template<typename StringType , typename Arg > |
using | detect_string_can_append = is_detected< string_can_append, StringType, Arg > |
|
template<typename StringType , typename Arg > |
using | string_can_append_op = decltype(std::declval< StringType & >()+=std::declval< Arg && >()) |
|
template<typename StringType , typename Arg > |
using | detect_string_can_append_op = is_detected< string_can_append_op, StringType, Arg > |
|
template<typename StringType , typename Arg > |
using | string_can_append_iter = decltype(std::declval< StringType & >().append(std::declval< const Arg & >().begin(), std::declval< const Arg & >().end())) |
|
template<typename StringType , typename Arg > |
using | detect_string_can_append_iter = is_detected< string_can_append_iter, StringType, Arg > |
|
template<typename StringType , typename Arg > |
using | string_can_append_data = decltype(std::declval< StringType & >().append(std::declval< const Arg & >().data(), std::declval< const Arg & >().size())) |
|
template<typename StringType , typename Arg > |
using | detect_string_can_append_data = is_detected< string_can_append_data, StringType, Arg > |
|
template<template< class... > class Op, class... Args> |
using | is_detected = typename detector< nonesuch, void, Op, Args... >::value_t |
|
template<template< class... > class Op, class... Args> |
using | detected_t = typename detector< nonesuch, void, Op, Args... >::type |
|
template<class Default , template< class... > class Op, class... Args> |
using | detected_or = detector< Default, void, Op, Args... > |
|
template<class Default , template< class... > class Op, class... Args> |
using | detected_or_t = typename detected_or< Default, Op, Args... >::type |
|
template<class Expected , template< class... > class Op, class... Args> |
using | is_detected_exact = std::is_same< Expected, detected_t< Op, Args... > > |
|
template<class To , template< class... > class Op, class... Args> |
using | is_detected_convertible = std::is_convertible< detected_t< Op, Args... >, To > |
|
template<typename T > |
using | uncvref_t = typename std::remove_cv< typename std::remove_reference< T >::type >::type |
|
template<bool B, typename T = void> |
using | enable_if_t = typename std::enable_if< B, T >::type |
|
template<typename T , T N> |
using | make_integer_sequence = typename utility_internal::Gen< T, N >::type |
|
template<typename... Ts> |
using | index_sequence_for = make_index_sequence< sizeof...(Ts)> |
|
template<typename T > |
using | mapped_type_t = typename T::mapped_type |
|
template<typename T > |
using | key_type_t = typename T::key_type |
|
template<typename T > |
using | value_type_t = typename T::value_type |
|
template<typename T > |
using | difference_type_t = typename T::difference_type |
|
template<typename T > |
using | pointer_t = typename T::pointer |
|
template<typename T > |
using | reference_t = typename T::reference |
|
template<typename T > |
using | iterator_category_t = typename T::iterator_category |
|
template<typename T , typename... Args> |
using | to_json_function = decltype(T::to_json(std::declval< Args >()...)) |
|
template<typename T , typename... Args> |
using | from_json_function = decltype(T::from_json(std::declval< Args >()...)) |
|
template<typename T , typename U > |
using | get_template_function = decltype(std::declval< T >().template get< U >()) |
|
template<typename T > |
using | detect_key_compare = typename T::key_compare |
|
template<typename BasicJsonType > |
using | actual_object_comparator_t = typename actual_object_comparator< BasicJsonType >::type |
|
template<typename T > |
using | range_value_t = value_type_t< iterator_traits< iterator_t< T > > > |
|
template<typename T > |
using | is_json_pointer = is_specialization_of<::wpi::json_pointer, uncvref_t< T > > |
|
template<typename T > |
using | detect_is_transparent = typename T::is_transparent |
|
template<typename Comparator , typename ObjectKeyType , typename KeyTypeCVRef , bool RequireTransparentComparator = true, bool ExcludeObjectKeyType = RequireTransparentComparator, typename KeyType = uncvref_t<KeyTypeCVRef>> |
using | is_usable_as_key_type = typename std::conditional< is_comparable< Comparator, ObjectKeyType, KeyTypeCVRef >::value &&!(ExcludeObjectKeyType &&std::is_same< KeyType, ObjectKeyType >::value) &&(!RequireTransparentComparator||is_detected< detect_is_transparent, Comparator >::value) &&!is_json_pointer< KeyType >::value, std::true_type, std::false_type >::type |
|
template<typename BasicJsonType , typename KeyTypeCVRef , bool RequireTransparentComparator = true, bool ExcludeObjectKeyType = RequireTransparentComparator, typename KeyType = uncvref_t<KeyTypeCVRef>> |
using | is_usable_as_basic_json_key_type = typename std::conditional< is_usable_as_key_type< typename BasicJsonType::object_comparator_t, typename BasicJsonType::object_t::key_type, KeyTypeCVRef, RequireTransparentComparator, ExcludeObjectKeyType >::value &&!is_json_iterator_of< BasicJsonType, KeyType >::value, std::true_type, std::false_type >::type |
|
template<typename ObjectType , typename KeyType > |
using | detect_erase_with_key_type = decltype(std::declval< ObjectType & >().erase(std::declval< KeyType >())) |
|
template<typename BasicJsonType , typename KeyType > |
using | has_erase_with_key_type = typename std::conditional< is_detected< detect_erase_with_key_type, typename BasicJsonType::object_t, KeyType >::value, std::true_type, std::false_type >::type |
|
template<typename... Types> |
using | all_integral = conjunction< std::is_integral< Types >... > |
|
template<typename... Types> |
using | all_signed = conjunction< std::is_signed< Types >... > |
|
template<typename... Types> |
using | all_unsigned = conjunction< std::is_unsigned< Types >... > |
|
template<typename... Types> |
using | same_sign = std::integral_constant< bool, all_signed< Types... >::value||all_unsigned< Types... >::value > |
|
template<typename OfType , typename T > |
using | never_out_of_range = std::integral_constant< bool,(std::is_signed< OfType >::value &&(sizeof(T)< sizeof(OfType)))||(same_sign< OfType, T >::value &&sizeof(OfType)==sizeof(T)) > |
|
template<bool Value> |
using | bool_constant = std::integral_constant< bool, Value > |
|
template<typename T > |
using | is_c_string_uncvref = is_c_string< uncvref_t< T > > |
|
template<typename T > |
using | null_function_t = decltype(std::declval< T & >().null()) |
|
template<typename T > |
using | boolean_function_t = decltype(std::declval< T & >().boolean(std::declval< bool >())) |
|
template<typename T , typename Integer > |
using | number_integer_function_t = decltype(std::declval< T & >().number_integer(std::declval< Integer >())) |
|
template<typename T , typename Unsigned > |
using | number_unsigned_function_t = decltype(std::declval< T & >().number_unsigned(std::declval< Unsigned >())) |
|
template<typename T , typename Float , typename String > |
using | number_float_function_t = decltype(std::declval< T & >().number_float(std::declval< Float >(), std::declval< const String & >())) |
|
template<typename T , typename String > |
using | string_function_t = decltype(std::declval< T & >().string(std::declval< String & >())) |
|
template<typename T , typename Binary > |
using | binary_function_t = decltype(std::declval< T & >().binary(std::declval< Binary & >())) |
|
template<typename T > |
using | start_object_function_t = decltype(std::declval< T & >().start_object(std::declval< std::size_t >())) |
|
template<typename T , typename String > |
using | key_function_t = decltype(std::declval< T & >().key(std::declval< String & >())) |
|
template<typename T > |
using | end_object_function_t = decltype(std::declval< T & >().end_object()) |
|
template<typename T > |
using | start_array_function_t = decltype(std::declval< T & >().start_array(std::declval< std::size_t >())) |
|
template<typename T > |
using | end_array_function_t = decltype(std::declval< T & >().end_array()) |
|
template<typename T , typename Exception > |
using | parse_error_function_t = decltype(std::declval< T & >().parse_error(std::declval< std::size_t >(), std::declval< const std::string & >(), std::declval< const Exception & >())) |
|
template<typename CharType > |
using | output_adapter_t = std::shared_ptr< output_adapter_protocol< CharType > > |
| a type to simplify interfaces More...
|
|
|
auto | write_loc (std::back_insert_iterator< detail::buffer< wchar_t > > out, loc_value value, const format_specs< wchar_t > &specs, locale_ref loc) -> bool |
|
template<typename Char > |
FMT_CONSTEXPR ansi_color_escape< Char > | make_foreground_color (detail::color_type foreground) noexcept |
|
template<typename Char > |
FMT_CONSTEXPR ansi_color_escape< Char > | make_background_color (detail::color_type background) noexcept |
|
template<typename Char > |
FMT_CONSTEXPR ansi_color_escape< Char > | make_emphasis (emphasis em) noexcept |
|
template<typename Char > |
void | reset_color (buffer< Char > &buffer) |
|
template<typename Char > |
void | vformat_to (buffer< Char > &buf, const text_style &ts, basic_string_view< Char > format_str, basic_format_args< buffer_context< type_identity_t< Char > > > args) |
|
null localtime_r | FMT_NOMACRO (...) |
|
null | localtime_s (...) |
|
null | gmtime_r (...) |
|
null | gmtime_s (...) |
|
const std::locale & | get_classic_locale () |
|
template<typename CodeUnit > |
void | write_codecvt (codecvt_result< CodeUnit > &out, string_view in_buf, const std::locale &loc) |
|
template<typename OutputIt > |
auto | write_encoded_tm_str (OutputIt out, string_view in, const std::locale &loc) -> OutputIt |
|
template<typename Char , typename OutputIt , FMT_ENABLE_IF(!std::is_same< Char, char >::value) > |
auto | write_tm_str (OutputIt out, string_view sv, const std::locale &loc) -> OutputIt |
|
template<typename Char > |
void | do_write (buffer< Char > &buf, const std::tm &time, const std::locale &loc, char format, char modifier) |
|
template<typename Char , typename OutputIt , FMT_ENABLE_IF(!std::is_same< Char, char >::value) > |
auto | write (OutputIt out, const std::tm &time, const std::locale &loc, char format, char modifier=0) -> OutputIt |
|
void | write_digit2_separated (char *buf, unsigned a, unsigned b, unsigned c, char sep) |
|
template<typename Period > |
FMT_CONSTEXPR const char * | get_units () |
|
template<typename OutputIt > |
auto | write_padding (OutputIt out, pad_type pad, int width) -> OutputIt |
|
template<typename OutputIt > |
auto | write_padding (OutputIt out, pad_type pad) -> OutputIt |
|
template<typename Char , typename Handler > |
FMT_CONSTEXPR const Char * | parse_chrono_format (const Char *begin, const Char *end, Handler &&handler) |
|
const char * | tm_wday_full_name (int wday) |
|
const char * | tm_wday_short_name (int wday) |
|
const char * | tm_mon_full_name (int mon) |
|
const char * | tm_mon_short_name (int mon) |
|
template<typename T , typename Int , FMT_ENABLE_IF(std::is_integral< T >::value) > |
Int | to_nonnegative_int (T value, Int upper) |
|
constexpr long long | pow10 (std::uint32_t n) |
|
template<typename Char , typename OutputIt , typename Duration > |
void | write_fractional_seconds (OutputIt &out, Duration d, int precision=-1) |
|
template<typename Duration > |
void | write_floating_seconds (memory_buffer &buf, Duration duration, int num_fractional_digits=-1) |
|
template<typename T , FMT_ENABLE_IF(std::is_integral< T >::value &&has_isfinite< T >::value) > |
bool | isfinite (T) |
|
template<typename T , FMT_ENABLE_IF(std::is_integral< T >::value) > |
T | mod (T x, int y) |
|
template<typename To , typename FromRep , typename FromPeriod > |
To | fmt_safe_duration_cast (std::chrono::duration< FromRep, FromPeriod > from) |
|
template<typename Rep , typename Period , FMT_ENABLE_IF(std::is_integral< Rep >::value) > |
std::chrono::duration< Rep, std::milli > | get_milliseconds (std::chrono::duration< Rep, Period > d) |
|
template<typename Char , typename Rep , typename OutputIt , FMT_ENABLE_IF(std::is_integral< Rep >::value) > |
OutputIt | format_duration_value (OutputIt out, Rep val, int) |
|
template<typename Char , typename OutputIt > |
OutputIt | copy_unit (string_view unit, OutputIt out, Char) |
|
template<typename OutputIt > |
OutputIt | copy_unit (string_view unit, OutputIt out, wchar_t) |
|
template<typename Char , typename Period , typename OutputIt > |
OutputIt | format_duration_unit (OutputIt out) |
|
template<typename Range , typename OutputIt > |
auto | copy (const Range &range, OutputIt out) -> OutputIt |
|
template<typename OutputIt > |
auto | copy (const char *str, OutputIt out) -> OutputIt |
|
template<typename OutputIt > |
auto | copy (char ch, OutputIt out) -> OutputIt |
|
template<typename OutputIt > |
auto | copy (wchar_t ch, OutputIt out) -> OutputIt |
|
template<typename T , std::size_t N> |
auto | range_begin (const T(&arr)[N]) -> const T * |
|
template<typename T , std::size_t N> |
auto | range_end (const T(&arr)[N]) -> const T * |
|
template<typename T > |
auto | range_begin (T &&rng) FMT_DECLTYPE_RETURN(static_cast< T && >(rng).begin()) |
|
template<typename T > |
auto | range_end (T &&rng) FMT_DECLTYPE_RETURN(static_cast< T && >(rng).end()) |
|
template<typename T > |
auto | range_begin (T &&rng) -> enable_if_t<!has_member_fn_begin_end_t< T && >::value, decltype(begin(static_cast< T && >(rng)))> |
|
template<typename T > |
auto | range_end (T &&rng) -> enable_if_t<!has_member_fn_begin_end_t< T && >::value, decltype(end(static_cast< T && >(rng)))> |
|
template<typename Tuple , typename F , size_t... Is> |
FMT_CONSTEXPR void | for_each (index_sequence< Is... >, Tuple &&t, F &&f) |
|
template<typename Tuple , typename F > |
FMT_CONSTEXPR void | for_each (Tuple &&t, F &&f) |
|
template<typename Tuple1 , typename Tuple2 , typename F , size_t... Is> |
void | for_each2 (index_sequence< Is... >, Tuple1 &&t1, Tuple2 &&t2, F &&f) |
|
template<typename Tuple1 , typename Tuple2 , typename F > |
void | for_each2 (Tuple1 &&t1, Tuple2 &&t2, F &&f) |
|
template<typename Formatter > |
FMT_CONSTEXPR auto | maybe_set_debug_format (Formatter &f, bool set) -> decltype(f.set_debug_format(set)) |
|
template<typename Formatter > |
FMT_CONSTEXPR void | maybe_set_debug_format (Formatter &,...) |
|
FMT_FUNC void | assert_fail (const char *file, int line, const char *message) |
|
FMT_FUNC void | throw_format_error (const char *message) |
|
FMT_FUNC void | format_error_code (detail::buffer< char > &out, int error_code, string_view message) noexcept |
|
FMT_FUNC void | report_error (format_func func, int error_code, const char *message) noexcept |
|
void | fwrite_fully (const void *ptr, size_t size, size_t count, FILE *stream) |
|
template<typename Char > |
FMT_FUNC auto | thousands_sep_impl (locale_ref loc) -> thousands_sep_result< Char > |
|
template<typename Char > |
FMT_FUNC Char | decimal_point_impl (locale_ref loc) |
|
FMT_FUNC auto | write_loc (appender out, loc_value value, const format_specs<> &specs, locale_ref loc) -> bool |
|
template<typename F > |
bool | operator== (basic_fp< F > x, basic_fp< F > y) |
|
FMT_CONSTEXPR uint32_t | rotr (uint32_t n, uint32_t r) noexcept |
|
FMT_CONSTEXPR uint64_t | rotr (uint64_t n, uint32_t r) noexcept |
|
FMT_FUNC bool | write_console (std::FILE *, string_view) |
|
FMT_FUNC void | print (std::FILE *f, string_view text) |
|
auto | is_printable (uint16_t x, const singleton *singletons, size_t singletons_size, const unsigned char *singleton_lowers, const unsigned char *normal, size_t normal_size) -> bool |
|
FMT_FUNC auto | is_printable (uint32_t cp) -> bool |
|
FMT_CONSTEXPR void | abort_fuzzing_if (bool condition) |
|
template<typename To , typename From , FMT_ENABLE_IF(sizeof(To)==sizeof(From)) > |
FMT_CONSTEXPR20 auto | bit_cast (const From &from) -> To |
|
auto | is_big_endian () -> bool |
|
template<typename T > |
constexpr auto | max_value () -> T |
|
template<typename T > |
constexpr auto | num_bits () -> int |
|
template<> |
constexpr auto | num_bits< int128_opt > () -> int |
|
template<> |
constexpr auto | num_bits< uint128_t > () -> int |
|
template<typename To , typename From , FMT_ENABLE_IF(sizeof(To) > sizeof(From)) > |
auto | bit_cast (const From &from) -> To |
|
template<typename UInt > |
FMT_CONSTEXPR20 auto | countl_zero_fallback (UInt n) -> int |
|
FMT_CONSTEXPR20 auto | countl_zero (uint32_t n) -> int |
|
FMT_CONSTEXPR20 auto | countl_zero (uint64_t n) -> int |
|
FMT_INLINE void | assume (bool condition) |
|
template<typename Char > |
auto | get_data (std::basic_string< Char > &s) -> Char * |
|
template<typename Container > |
auto | get_data (Container &c) -> typename Container::value_type * |
|
template<typename Container , FMT_ENABLE_IF(is_contiguous< Container >::value) > |
auto | reserve (std::back_insert_iterator< Container > it, size_t n) -> typename Container::value_type * |
|
template<typename T > |
auto | reserve (buffer_appender< T > it, size_t n) -> buffer_appender< T > |
|
template<typename Iterator > |
constexpr auto | reserve (Iterator &it, size_t) -> Iterator & |
|
template<typename T , typename OutputIt > |
constexpr auto | to_pointer (OutputIt, size_t) -> T * |
|
template<typename T > |
auto | to_pointer (buffer_appender< T > it, size_t n) -> T * |
|
template<typename Container , FMT_ENABLE_IF(is_contiguous< Container >::value) > |
auto | base_iterator (std::back_insert_iterator< Container > it, typename Container::value_type *) -> std::back_insert_iterator< Container > |
|
template<typename Iterator > |
constexpr auto | base_iterator (Iterator, Iterator it) -> Iterator |
|
template<typename OutputIt , typename Size , typename T > |
FMT_CONSTEXPR auto | fill_n (OutputIt out, Size count, const T &value) -> OutputIt |
|
template<typename T , typename Size > |
FMT_CONSTEXPR20 auto | fill_n (T *out, Size count, char value) -> T * |
|
template<typename OutChar , typename InputIt , typename OutputIt > |
FMT_CONSTEXPR FMT_NOINLINE auto | copy_str_noinline (InputIt begin, InputIt end, OutputIt out) -> OutputIt |
|
FMT_CONSTEXPR auto | utf8_decode (const char *s, uint32_t *c, int *e) -> const char * |
|
template<typename F > |
FMT_CONSTEXPR void | for_each_codepoint (string_view s, F f) |
|
template<typename Char > |
auto | compute_width (basic_string_view< Char > s) -> size_t |
|
FMT_CONSTEXPR size_t | compute_width (string_view s) |
|
auto | compute_width (basic_string_view< char8_type > s) -> size_t |
|
template<typename Char > |
auto | code_point_index (basic_string_view< Char > s, size_t n) -> size_t |
|
auto | code_point_index (string_view s, size_t n) -> size_t |
|
auto | code_point_index (basic_string_view< char8_type > s, size_t n) -> size_t |
|
template<typename T , FMT_ENABLE_IF(is_signed< T >::value) > |
constexpr auto | is_negative (T value) -> bool |
|
template<typename T > |
FMT_CONSTEXPR auto | is_supported_floating_point (T) -> bool |
|
constexpr const char * | digits2 (size_t value) |
|
template<typename Char , typename Sign > |
constexpr Char | sign (Sign s) |
|
template<typename T > |
FMT_CONSTEXPR auto | count_digits_fallback (T n) -> int |
|
FMT_CONSTEXPR20 auto | count_digits (uint64_t n) -> int |
|
template<int BITS, typename UInt > |
FMT_CONSTEXPR auto | count_digits (UInt n) -> int |
|
FMT_CONSTEXPR20 auto | count_digits (uint32_t n) -> int |
|
template<typename Int > |
constexpr auto | digits10 () noexcept -> int |
|
template<> |
constexpr auto | digits10< int128_opt > () noexcept -> int |
|
template<> |
constexpr auto | digits10< uint128_t > () noexcept -> int |
|
template<typename Char > |
FMT_API auto | thousands_sep_impl (locale_ref loc) -> thousands_sep_result< Char > |
|
template<typename Char > |
auto | thousands_sep (locale_ref loc) -> thousands_sep_result< Char > |
|
template<> |
auto | thousands_sep (locale_ref loc) -> thousands_sep_result< wchar_t > |
|
template<typename Char > |
FMT_API auto | decimal_point_impl (locale_ref loc) -> Char |
|
template<typename Char > |
auto | decimal_point (locale_ref loc) -> Char |
|
template<> |
auto | decimal_point (locale_ref loc) -> wchar_t |
|
template<typename Char > |
auto | equal2 (const Char *lhs, const char *rhs) -> bool |
|
auto | equal2 (const char *lhs, const char *rhs) -> bool |
|
template<typename Char > |
FMT_CONSTEXPR20 FMT_INLINE void | copy2 (Char *dst, const char *src) |
|
template<typename Char , typename UInt > |
FMT_CONSTEXPR20 auto | format_decimal (Char *out, UInt value, int size) -> format_decimal_result< Char * > |
|
template<typename Char , typename UInt , typename Iterator , FMT_ENABLE_IF(!std::is_pointer< remove_cvref_t< Iterator > >::value) > |
FMT_CONSTEXPR auto | format_decimal (Iterator out, UInt value, int size) -> format_decimal_result< Iterator > |
|
template<unsigned BASE_BITS, typename Char , typename UInt > |
FMT_CONSTEXPR auto | format_uint (Char *buffer, UInt value, int num_digits, bool upper=false) -> Char * |
|
template<unsigned BASE_BITS, typename Char , typename It , typename UInt > |
FMT_CONSTEXPR auto | format_uint (It out, UInt value, int num_digits, bool upper=false) -> It |
|
uint128_fallback | umul128 (uint64_t x, uint64_t y) noexcept |
|
template<typename Float > |
constexpr bool | has_implicit_bit () |
|
template<typename Float > |
constexpr int | num_significand_bits () |
|
template<typename Float > |
constexpr auto | exponent_mask () -> typename dragonbox::float_info< Float >::carrier_uint |
|
template<typename Float > |
constexpr auto | exponent_bias () -> int |
|
template<typename Char , typename It > |
FMT_CONSTEXPR auto | write_exponent (int exp, It it) -> It |
|
template<int SHIFT = 0, typename F > |
FMT_CONSTEXPR basic_fp< F > | normalize (basic_fp< F > value) |
|
FMT_CONSTEXPR uint64_t | multiply (uint64_t lhs, uint64_t rhs) |
|
FMT_CONSTEXPR fp | operator* (fp x, fp y) |
|
template<typename T > |
constexpr auto | convert_float (T value) -> convert_float_result< T > |
|
template<typename OutputIt , typename Char > |
FMT_NOINLINE FMT_CONSTEXPR auto | fill (OutputIt it, size_t n, const fill_t< Char > &fill) -> OutputIt |
|
template<align::type align = align::left, typename OutputIt , typename Char , typename F > |
FMT_CONSTEXPR auto | write_padded (OutputIt out, const format_specs< Char > &specs, size_t size, size_t width, F &&f) -> OutputIt |
|
template<align::type align = align::left, typename OutputIt , typename Char , typename F > |
constexpr auto | write_padded (OutputIt out, const format_specs< Char > &specs, size_t size, F &&f) -> OutputIt |
|
template<align::type align = align::left, typename Char , typename OutputIt > |
FMT_CONSTEXPR auto | write_bytes (OutputIt out, string_view bytes, const format_specs< Char > &specs) -> OutputIt |
|
template<typename Char , typename OutputIt , typename UIntPtr > |
auto | write_ptr (OutputIt out, UIntPtr value, const format_specs< Char > *specs) -> OutputIt |
|
auto | needs_escape (uint32_t cp) -> bool |
|
template<typename Char > |
auto | find_escape (const Char *begin, const Char *end) -> find_escape_result< Char > |
|
auto | find_escape (const char *begin, const char *end) -> find_escape_result< char > |
|
template<size_t width, typename Char , typename OutputIt > |
auto | write_codepoint (OutputIt out, char prefix, uint32_t cp) -> OutputIt |
|
template<typename OutputIt , typename Char > |
auto | write_escaped_cp (OutputIt out, const find_escape_result< Char > &escape) -> OutputIt |
|
template<typename Char , typename OutputIt > |
auto | write_escaped_string (OutputIt out, basic_string_view< Char > str) -> OutputIt |
|
template<typename Char , typename OutputIt > |
auto | write_escaped_char (OutputIt out, Char v) -> OutputIt |
|
template<typename Char , typename OutputIt > |
FMT_CONSTEXPR auto | write_char (OutputIt out, Char value, const format_specs< Char > &specs) -> OutputIt |
|
template<typename Char , typename OutputIt > |
FMT_CONSTEXPR auto | write (OutputIt out, Char value, const format_specs< Char > &specs, locale_ref loc={}) -> OutputIt |
|
template<typename OutputIt , typename Char , typename W > |
FMT_CONSTEXPR FMT_INLINE auto | write_int (OutputIt out, int num_digits, unsigned prefix, const format_specs< Char > &specs, W write_digits) -> OutputIt |
|
template<typename OutputIt , typename UInt , typename Char > |
auto | write_int (OutputIt out, UInt value, unsigned prefix, const format_specs< Char > &specs, const digit_grouping< Char > &grouping) -> OutputIt |
|
template<typename OutputIt , typename Char > |
auto | write_loc (OutputIt, loc_value, const format_specs< Char > &, locale_ref) -> bool |
|
FMT_CONSTEXPR void | prefix_append (unsigned &prefix, unsigned value) |
|
template<typename T > |
FMT_CONSTEXPR auto | make_write_int_arg (T value, sign_t sign) -> write_int_arg< uint32_or_64_or_128_t< T > > |
|
template<typename Char , typename OutputIt , typename T > |
FMT_CONSTEXPR FMT_INLINE auto | write_int (OutputIt out, write_int_arg< T > arg, const format_specs< Char > &specs, locale_ref) -> OutputIt |
|
template<typename Char , typename OutputIt , typename T > |
FMT_CONSTEXPR FMT_NOINLINE auto | write_int_noinline (OutputIt out, write_int_arg< T > arg, const format_specs< Char > &specs, locale_ref loc) -> OutputIt |
|
template<typename Char , typename OutputIt , typename T , FMT_ENABLE_IF(is_integral< T >::value && !std::is_same< T, bool >::value && std::is_same< OutputIt, buffer_appender< Char > >::value) > |
FMT_CONSTEXPR FMT_INLINE auto | write (OutputIt out, T value, const format_specs< Char > &specs, locale_ref loc) -> OutputIt |
|
template<typename Char , typename OutputIt > |
FMT_CONSTEXPR auto | write (OutputIt out, basic_string_view< Char > s, const format_specs< Char > &specs) -> OutputIt |
|
template<typename Char , typename OutputIt > |
FMT_CONSTEXPR auto | write (OutputIt out, basic_string_view< type_identity_t< Char > > s, const format_specs< Char > &specs, locale_ref) -> OutputIt |
|
template<typename Char , typename OutputIt > |
FMT_CONSTEXPR auto | write (OutputIt out, const Char *s, const format_specs< Char > &specs, locale_ref) -> OutputIt |
|
template<typename Char , typename OutputIt , typename T , FMT_ENABLE_IF(is_integral< T >::value && !std::is_same< T, bool >::value && !std::is_same< T, Char >::value) > |
FMT_CONSTEXPR auto | write (OutputIt out, T value) -> OutputIt |
|
template<typename Char > |
FMT_CONSTEXPR auto | parse_align (const Char *begin, const Char *end, format_specs< Char > &specs) -> const Char * |
|
template<typename ErrorHandler = error_handler, typename Char > |
FMT_CONSTEXPR auto | parse_float_type_spec (const format_specs< Char > &specs, ErrorHandler &&eh={}) -> float_specs |
|
template<typename Char , typename OutputIt > |
FMT_CONSTEXPR20 auto | write_nonfinite (OutputIt out, bool isnan, format_specs< Char > specs, const float_specs &fspecs) -> OutputIt |
|
constexpr auto | get_significand_size (const big_decimal_fp &f) -> int |
|
template<typename T > |
auto | get_significand_size (const dragonbox::decimal_fp< T > &f) -> int |
|
template<typename Char , typename OutputIt > |
constexpr auto | write_significand (OutputIt out, const char *significand, int significand_size) -> OutputIt |
|
template<typename Char , typename OutputIt , typename UInt > |
auto | write_significand (OutputIt out, UInt significand, int significand_size) -> OutputIt |
|
template<typename Char , typename OutputIt , typename T , typename Grouping > |
FMT_CONSTEXPR20 auto | write_significand (OutputIt out, T significand, int significand_size, int exponent, const Grouping &grouping) -> OutputIt |
|
template<typename Char , typename UInt , FMT_ENABLE_IF(std::is_integral< UInt >::value) > |
auto | write_significand (Char *out, UInt significand, int significand_size, int integral_size, Char decimal_point) -> Char * |
|
template<typename OutputIt , typename UInt , typename Char , FMT_ENABLE_IF(!std::is_pointer< remove_cvref_t< OutputIt > >::value) > |
auto | write_significand (OutputIt out, UInt significand, int significand_size, int integral_size, Char decimal_point) -> OutputIt |
|
template<typename OutputIt , typename Char > |
FMT_CONSTEXPR auto | write_significand (OutputIt out, const char *significand, int significand_size, int integral_size, Char decimal_point) -> OutputIt |
|
template<typename OutputIt , typename Char , typename T , typename Grouping > |
FMT_CONSTEXPR20 auto | write_significand (OutputIt out, T significand, int significand_size, int integral_size, Char decimal_point, const Grouping &grouping) -> OutputIt |
|
template<typename OutputIt , typename DecimalFP , typename Char , typename Grouping = digit_grouping<Char>> |
FMT_CONSTEXPR20 auto | do_write_float (OutputIt out, const DecimalFP &f, const format_specs< Char > &specs, float_specs fspecs, locale_ref loc) -> OutputIt |
|
template<typename OutputIt , typename DecimalFP , typename Char > |
FMT_CONSTEXPR20 auto | write_float (OutputIt out, const DecimalFP &f, const format_specs< Char > &specs, float_specs fspecs, locale_ref loc) -> OutputIt |
|
template<typename T > |
constexpr bool | isnan (T value) |
|
template<typename T , FMT_ENABLE_IF(std::is_floating_point< T >::value && has_isfinite< T >::value) > |
FMT_CONSTEXPR20 bool | isfinite (T value) |
|
template<typename T , FMT_ENABLE_IF(!has_isfinite< T >::value) > |
FMT_CONSTEXPR bool | isfinite (T value) |
|
template<typename T , FMT_ENABLE_IF(is_floating_point< T >::value) > |
FMT_INLINE FMT_CONSTEXPR bool | signbit (T value) |
|
FMT_CONSTEXPR20 void | adjust_precision (int &precision, int exp10) |
|
FMT_CONSTEXPR20 void | format_dragon (basic_fp< uint128_t > value, unsigned flags, int num_digits, buffer< char > &buf, int &exp10) |
|
template<typename Float , FMT_ENABLE_IF(!is_double_double< Float >::value) > |
FMT_CONSTEXPR20 void | format_hexfloat (Float value, int precision, float_specs specs, buffer< char > &buf) |
|
template<typename Float > |
FMT_CONSTEXPR20 auto | format_float (Float value, int precision, float_specs specs, buffer< char > &buf) -> int |
|
template<typename Char , typename OutputIt , typename T > |
FMT_CONSTEXPR20 auto | write_float (OutputIt out, T value, format_specs< Char > specs, locale_ref loc) -> OutputIt |
|
template<typename Char , typename OutputIt , typename T , FMT_ENABLE_IF(is_floating_point< T >::value) > |
FMT_CONSTEXPR20 auto | write (OutputIt out, T value, format_specs< Char > specs, locale_ref loc={}) -> OutputIt |
|
template<typename Char , typename OutputIt , typename T , FMT_ENABLE_IF(is_fast_float< T >::value) > |
FMT_CONSTEXPR20 auto | write (OutputIt out, T value) -> OutputIt |
|
template<typename Char , typename OutputIt , typename T , FMT_ENABLE_IF(is_floating_point< T >::value && !is_fast_float< T >::value) > |
auto | write (OutputIt out, T value) -> OutputIt |
|
template<typename Char , typename OutputIt > |
auto | write (OutputIt out, monostate, format_specs< Char >={}, locale_ref={}) -> OutputIt |
|
template<typename Char , typename OutputIt > |
FMT_CONSTEXPR auto | write (OutputIt out, basic_string_view< Char > value) -> OutputIt |
|
template<typename Char , typename OutputIt , typename T , FMT_ENABLE_IF(is_string< T >::value) > |
constexpr auto | write (OutputIt out, const T &value) -> OutputIt |
|
template<typename Char , typename OutputIt , typename T , bool check = std::is_enum<T>::value && !std::is_same<T, Char>::value && mapped_type_constant<T, basic_format_context<OutputIt, Char>>::value != type::custom_type, FMT_ENABLE_IF(check) > |
FMT_CONSTEXPR auto | write (OutputIt out, T value) -> OutputIt |
|
template<typename Char , typename OutputIt , typename T , FMT_ENABLE_IF(std::is_same< T, bool >::value) > |
FMT_CONSTEXPR auto | write (OutputIt out, T value, const format_specs< Char > &specs={}, locale_ref={}) -> OutputIt |
|
template<typename Char , typename OutputIt > |
FMT_CONSTEXPR auto | write (OutputIt out, Char value) -> OutputIt |
|
template<typename Char , typename OutputIt > |
FMT_CONSTEXPR_CHAR_TRAITS auto | write (OutputIt out, const Char *value) -> OutputIt |
|
template<typename Char , typename OutputIt , typename T , FMT_ENABLE_IF(std::is_same< T, void >::value) > |
auto | write (OutputIt out, const T *value, const format_specs< Char > &specs={}, locale_ref={}) -> OutputIt |
|
template<typename Char , typename OutputIt , typename T , typename Context = basic_format_context<OutputIt, Char>> |
FMT_CONSTEXPR auto | write (OutputIt out, const T &value) -> enable_if_t< std::is_class< T >::value &&!is_string< T >::value &&!is_floating_point< T >::value &&!std::is_same< T, Char >::value &&!std::is_same< T, remove_cvref_t< decltype(arg_mapper< Context >().map(value))> >::value, OutputIt > |
|
template<template< typename > class Handler, typename FormatArg , typename ErrorHandler > |
FMT_CONSTEXPR auto | get_dynamic_spec (FormatArg arg, ErrorHandler eh) -> int |
|
template<typename Context , typename ID > |
FMT_CONSTEXPR auto | get_arg (Context &ctx, ID id) -> decltype(ctx.arg(id)) |
|
template<template< typename > class Handler, typename Context > |
FMT_CONSTEXPR void | handle_dynamic_spec (int &value, arg_ref< typename Context::char_type > ref, Context &ctx) |
|
template<typename Locale , typename Char > |
auto | vformat (const Locale &loc, basic_string_view< Char > fmt, basic_format_args< buffer_context< type_identity_t< Char > > > args) -> std::basic_string< Char > |
|
template<typename Char > |
void | vformat_to (buffer< Char > &buf, basic_string_view< Char > fmt, typename vformat_args< Char >::type args, locale_ref loc) |
|
FMT_BEGIN_EXPORT template FMT_API void | vformat_to (buffer< char > &, string_view, typename vformat_args<>::type, locale_ref) |
|
template FMT_API auto | thousands_sep_impl< char > (locale_ref) -> thousands_sep_result< char > |
|
template FMT_API auto | thousands_sep_impl< wchar_t > (locale_ref) -> thousands_sep_result< wchar_t > |
|
template FMT_API auto | decimal_point_impl (locale_ref) -> char |
|
template<typename T , typename Context , typename Char > |
void | convert_arg (basic_format_arg< Context > &arg, Char type) |
|
template<typename Char > |
auto | make_arg_formatter (buffer_appender< Char > iter, format_specs< Char > &s) -> arg_formatter< Char > |
|
template<typename Char > |
void | parse_flags (format_specs< Char > &specs, const Char *&it, const Char *end) |
|
template<typename Char , typename GetArg > |
auto | parse_header (const Char *&it, const Char *end, format_specs< Char > &specs, GetArg get_arg) -> int |
|
auto | parse_printf_presentation_type (char c, type t) -> presentation_type |
|
template<typename Char , typename Context > |
void | vprintf (buffer< Char > &buf, basic_string_view< Char > format, basic_format_args< Context > args) |
|
template<typename T > |
const T & | unwrap (const T &v) |
|
template<typename T > |
const T & | unwrap (const std::reference_wrapper< T > &v) |
|
template<typename Char , typename InputIt > |
FMT_CONSTEXPR counting_iterator | copy_str (InputIt begin, InputIt end, counting_iterator it) |
|
template<typename T , typename... Tail> |
const T & | first (const T &value, const Tail &...) |
|
bool | write_ostream_unicode (std::ostream &os, fmt::string_view data) |
|
bool | write_ostream_unicode (std::wostream &, fmt::basic_string_view< wchar_t >) |
|
template<typename Char > |
void | write_buffer (std::basic_ostream< Char > &os, buffer< Char > &buf) |
|
template<typename Char , typename T > |
void | format_value (buffer< Char > &buf, const T &value, locale_ref loc=locale_ref()) |
|
void | vprint_directly (std::ostream &os, string_view format_str, format_args args) |
|
template<typename... T> |
FMT_CONSTEXPR void | ignore_unused (const T &...) |
|
constexpr FMT_INLINE auto | is_constant_evaluated (bool default_value=false) noexcept -> bool |
|
template<typename T > |
constexpr FMT_INLINE auto | const_check (T value) -> T |
|
template<typename T > |
auto | convert_for_visit (T) -> monostate |
|
template<typename Int > |
FMT_CONSTEXPR auto | to_unsigned (Int value) -> typename std::make_unsigned< Int >::type |
|
FMT_CONSTEXPR auto | is_utf8 () -> bool |
|
template<typename Char , FMT_ENABLE_IF(is_char< Char >::value) > |
FMT_INLINE auto | to_string_view (const Char *s) -> basic_string_view< Char > |
|
template<typename Char , typename Traits , typename Alloc > |
auto | to_string_view (const std::basic_string< Char, Traits, Alloc > &s) -> basic_string_view< Char > |
|
template<typename Char > |
constexpr auto | to_string_view (basic_string_view< Char > s) -> basic_string_view< Char > |
|
template<typename Char , FMT_ENABLE_IF(!std::is_empty< std_string_view< Char > >::value) > |
auto | to_string_view (std_string_view< Char > s) -> basic_string_view< Char > |
|
template<typename S , FMT_ENABLE_IF(is_compile_string< S >::value) > |
constexpr auto | to_string_view (const S &s) -> basic_string_view< typename S::char_type > |
|
void | to_string_view (...) |
|
| FMT_TYPE_CONSTANT (int, int_type) |
|
| FMT_TYPE_CONSTANT (unsigned, uint_type) |
|
| FMT_TYPE_CONSTANT (long long, long_long_type) |
|
| FMT_TYPE_CONSTANT (unsigned long long, ulong_long_type) |
|
| FMT_TYPE_CONSTANT (int128_opt, int128_type) |
|
| FMT_TYPE_CONSTANT (uint128_opt, uint128_type) |
|
| FMT_TYPE_CONSTANT (bool, bool_type) |
|
| FMT_TYPE_CONSTANT (Char, char_type) |
|
| FMT_TYPE_CONSTANT (float, float_type) |
|
| FMT_TYPE_CONSTANT (double, double_type) |
|
| FMT_TYPE_CONSTANT (long double, long_double_type) |
|
| FMT_TYPE_CONSTANT (const Char *, cstring_type) |
|
| FMT_TYPE_CONSTANT (basic_string_view< Char >, string_type) |
|
| FMT_TYPE_CONSTANT (const void *, pointer_type) |
|
constexpr bool | is_integral_type (type t) |
|
constexpr bool | is_arithmetic_type (type t) |
|
constexpr auto | set (type rhs) -> int |
|
constexpr auto | in (type t, int set) -> bool |
|
template<typename Container > |
auto | get_container (std::back_insert_iterator< Container > it) -> Container & |
|
template<typename Char , typename InputIt , typename OutputIt > |
FMT_CONSTEXPR auto | copy_str (InputIt begin, InputIt end, OutputIt out) -> OutputIt |
|
template<typename Char , typename T , typename U , FMT_ENABLE_IF( std::is_same< remove_const_t< T >, U >::value &&is_char< U >::value) > |
FMT_CONSTEXPR auto | copy_str (T *begin, T *end, U *out) -> U * |
|
template<typename Context , typename T > |
constexpr auto | has_const_formatter_impl (T *) -> decltype(typename Context::template formatter_type< T >().format(std::declval< const T & >(), std::declval< Context & >()), true) |
|
template<typename Context > |
constexpr auto | has_const_formatter_impl (...) -> bool |
|
template<typename T , typename Context > |
constexpr auto | has_const_formatter () -> bool |
|
template<typename T , typename OutputIt > |
auto | get_buffer (OutputIt out) -> iterator_buffer< OutputIt, T > |
|
template<typename T , typename Buf , FMT_ENABLE_IF(std::is_base_of< buffer< char >, Buf >::value) > |
auto | get_buffer (std::back_insert_iterator< Buf > out) -> buffer< char > & |
|
template<typename Buf , typename OutputIt > |
FMT_INLINE auto | get_iterator (Buf &buf, OutputIt) -> decltype(buf.out()) |
|
template<typename T , typename OutputIt > |
auto | get_iterator (buffer< T > &, OutputIt out) -> OutputIt |
|
template<typename Char > |
void | init_named_args (named_arg_info< Char > *, int, int) |
|
template<typename Char , typename T , typename... Tail, FMT_ENABLE_IF(!is_named_arg< T >::value) > |
void | init_named_args (named_arg_info< Char > *named_args, int arg_count, int named_arg_count, const T &, const Tail &... args) |
|
template<typename... Args> |
FMT_CONSTEXPR FMT_INLINE void | init_named_args (std::nullptr_t, int, int, const Args &...) |
|
template<bool B = false> |
constexpr auto | count () -> size_t |
|
template<bool B1, bool B2, bool... Tail> |
constexpr auto | count () -> size_t |
|
template<typename... Args> |
constexpr auto | count_named_args () -> size_t |
|
template<typename... Args> |
constexpr auto | count_statically_named_args () -> size_t |
|
template<typename Char , typename InputIt > |
auto | copy_str (InputIt begin, InputIt end, appender out) -> appender |
|
template<typename Char , typename InputIt > |
auto | copy_str (InputIt begin, InputIt end, std::back_insert_iterator< std::string > out) -> std::back_insert_iterator< std::string > |
|
template<typename Char , typename R , typename OutputIt > |
FMT_CONSTEXPR auto | copy_str (R &&rng, OutputIt out) -> OutputIt |
|
template<typename > |
constexpr auto | encode_types () -> unsigned long long |
|
template<typename Context , typename Arg , typename... Args> |
constexpr auto | encode_types () -> unsigned long long |
|
template<bool PACKED, typename Context , typename T , FMT_ENABLE_IF(PACKED) > |
FMT_CONSTEXPR FMT_INLINE auto | make_arg (T &val) -> value< Context > |
|
template<typename Context , typename T > |
FMT_CONSTEXPR auto | make_arg (T &val) -> basic_format_arg< Context > |
|
template<bool PACKED, typename Context , typename T , FMT_ENABLE_IF(!PACKED) > |
FMT_CONSTEXPR auto | make_arg (T &val) -> basic_format_arg< Context > |
|
template<typename Char , FMT_ENABLE_IF(std::is_integral< Char >::value) > |
constexpr auto | to_ascii (Char c) -> char |
|
template<typename Char > |
FMT_CONSTEXPR auto | code_point_length (const Char *begin) -> int |
|
template<bool IS_CONSTEXPR, typename T , typename Ptr = const T*> |
FMT_CONSTEXPR auto | find (Ptr first, Ptr last, T value, Ptr &out) -> bool |
|
template<> |
auto | find< false, char > (const char *first, const char *last, char value, const char *&out) -> bool |
|
template<typename Char > |
FMT_CONSTEXPR auto | parse_nonnegative_int (const Char *&begin, const Char *end, int error_value) noexcept -> int |
|
FMT_CONSTEXPR auto | parse_align (char c) -> align_t |
|
template<typename Char > |
constexpr auto | is_name_start (Char c) -> bool |
|
template<typename Char , typename Handler > |
FMT_CONSTEXPR auto | do_parse_arg_id (const Char *begin, const Char *end, Handler &&handler) -> const Char * |
|
template<typename Char , typename Handler > |
FMT_CONSTEXPR FMT_INLINE auto | parse_arg_id (const Char *begin, const Char *end, Handler &&handler) -> const Char * |
|
template<typename Char > |
FMT_CONSTEXPR auto | parse_dynamic_spec (const Char *begin, const Char *end, int &value, arg_ref< Char > &ref, basic_format_parse_context< Char > &ctx) -> const Char * |
|
template<typename Char > |
FMT_CONSTEXPR auto | parse_precision (const Char *begin, const Char *end, int &value, arg_ref< Char > &ref, basic_format_parse_context< Char > &ctx) -> const Char * |
|
template<typename Char > |
FMT_CONSTEXPR FMT_INLINE auto | parse_format_specs (const Char *begin, const Char *end, dynamic_format_specs< Char > &specs, basic_format_parse_context< Char > &ctx, type arg_type) -> const Char * |
|
template<typename Char , typename Handler > |
FMT_CONSTEXPR auto | parse_replacement_field (const Char *begin, const Char *end, Handler &&handler) -> const Char * |
|
template<bool IS_CONSTEXPR, typename Char , typename Handler > |
FMT_CONSTEXPR FMT_INLINE void | parse_format_string (basic_string_view< Char > format_str, Handler &&handler) |
|
template<typename T , typename ParseContext > |
FMT_CONSTEXPR auto | parse_format_specs (ParseContext &ctx) -> decltype(ctx.begin()) |
|
template<typename Char > |
FMT_CONSTEXPR auto | check_char_specs (const format_specs< Char > &specs) -> bool |
|
template<typename... Args, typename Char > |
FMT_CONSTEXPR auto | get_arg_index_by_name (basic_string_view< Char > name) -> int |
|
template<typename... , typename S , FMT_ENABLE_IF(!is_compile_string< S >::value) > |
FMT_INLINE void | check_format_string (const S &) |
|
template<typename... Args, typename S , FMT_ENABLE_IF(is_compile_string< S >::value) > |
void | check_format_string (S format_str) |
|
FMT_API void | vprint_mojibake (std::FILE *, string_view, format_args) |
|
static bool | little_endianness (int num=1) noexcept |
| determine system byte order More...
|
|
template<typename IteratorType > |
iterator_input_adapter_factory< IteratorType >::adapter_type | input_adapter (IteratorType first, IteratorType last) |
|
template<typename ContainerType > |
container_input_adapter_factory_impl::container_input_adapter_factory< ContainerType >::adapter_type | input_adapter (const ContainerType &container) |
|
file_input_adapter | input_adapter (std::FILE *file) |
|
input_stream_adapter | input_adapter (std::istream &stream) |
|
input_stream_adapter | input_adapter (std::istream &&stream) |
|
template<typename CharT , typename std::enable_if< std::is_pointer< CharT >::value &&!std::is_array< CharT >::value &&std::is_integral< typename std::remove_pointer< CharT >::type >::value &&sizeof(typename std::remove_pointer< CharT >::type)==1, int >::type = 0> |
contiguous_bytes_input_adapter | input_adapter (CharT b) |
|
template<typename T , std::size_t N> |
auto | input_adapter (T(&array)[N]) -> decltype(input_adapter(array, array+N)) |
|
template<typename string_type > |
void | int_to_string (string_type &target, std::size_t value) |
|
template<std::size_t N, typename IteratorType , enable_if_t< N==0, int > = 0> |
auto | get (const wpi::detail::iteration_proxy_value< IteratorType > &i) -> decltype(i.key()) |
|
std::size_t | concat_length () |
|
template<typename... Args> |
std::size_t | concat_length (const char *cstr, Args &&... rest) |
|
template<typename StringType , typename... Args> |
std::size_t | concat_length (const StringType &str, Args &&... rest) |
|
template<typename... Args> |
std::size_t | concat_length (const char, Args &&... rest) |
|
template<typename OutStringType > |
void | concat_into (OutStringType &) |
|
template<typename OutStringType , typename Arg , typename... Args, enable_if_t< !detect_string_can_append< OutStringType, Arg >::value &&detect_string_can_append_op< OutStringType, Arg >::value, int > = 0> |
void | concat_into (OutStringType &out, Arg &&arg, Args &&... rest) |
|
template<typename OutStringType , typename Arg , typename... Args, enable_if_t< !detect_string_can_append< OutStringType, Arg >::value &&!detect_string_can_append_op< OutStringType, Arg >::value &&detect_string_can_append_iter< OutStringType, Arg >::value, int > = 0> |
void | concat_into (OutStringType &out, const Arg &arg, Args &&... rest) |
|
template<typename OutStringType = std::string, typename... Args> |
OutStringType | concat (Args &&... args) |
|
template<typename FloatType > |
JSON_HEDLEY_RETURNS_NON_NULL char * | to_chars (char *first, const char *last, FloatType value) |
| generates a decimal representation of the floating-point number value in [first, last). More...
|
|
template<typename BasicJsonType > |
void | from_json (const BasicJsonType &j, typename std::nullptr_t &n) |
|
template<typename BasicJsonType , typename ArithmeticType , enable_if_t< std::is_arithmetic< ArithmeticType >::value &&!std::is_same< ArithmeticType, typename BasicJsonType::boolean_t >::value, int > = 0> |
void | get_arithmetic_value (const BasicJsonType &j, ArithmeticType &val) |
|
template<typename BasicJsonType > |
void | from_json (const BasicJsonType &j, typename BasicJsonType::boolean_t &b) |
|
template<typename BasicJsonType > |
void | from_json (const BasicJsonType &j, typename BasicJsonType::string_t &s) |
|
template<typename BasicJsonType , typename StringType , enable_if_t< std::is_assignable< StringType &, const typename BasicJsonType::string_t >::value &&is_detected_exact< typename BasicJsonType::string_t::value_type, value_type_t, StringType >::value &&!std::is_same< typename BasicJsonType::string_t, StringType >::value &&!is_json_ref< StringType >::value, int > = 0> |
void | from_json (const BasicJsonType &j, StringType &s) |
|
template<typename BasicJsonType > |
void | from_json (const BasicJsonType &j, typename BasicJsonType::number_float_t &val) |
|
template<typename BasicJsonType > |
void | from_json (const BasicJsonType &j, typename BasicJsonType::number_unsigned_t &val) |
|
template<typename BasicJsonType > |
void | from_json (const BasicJsonType &j, typename BasicJsonType::number_integer_t &val) |
|
template<typename BasicJsonType , typename EnumType , enable_if_t< std::is_enum< EnumType >::value, int > = 0> |
void | from_json (const BasicJsonType &j, EnumType &e) |
|
template<typename BasicJsonType , typename T , typename Allocator , enable_if_t< is_getable< BasicJsonType, T >::value, int > = 0> |
void | from_json (const BasicJsonType &j, std::forward_list< T, Allocator > &l) |
|
template<typename BasicJsonType , typename T , enable_if_t< is_getable< BasicJsonType, T >::value, int > = 0> |
void | from_json (const BasicJsonType &j, std::valarray< T > &l) |
|
template<typename BasicJsonType , typename T , std::size_t N> |
auto | from_json (const BasicJsonType &j, T(&arr)[N]) -> decltype(j.template get< T >(), void()) |
|
template<typename BasicJsonType > |
void | from_json_array_impl (const BasicJsonType &j, typename BasicJsonType::array_t &arr, priority_tag< 3 >) |
|
template<typename BasicJsonType , typename T , std::size_t N> |
auto | from_json_array_impl (const BasicJsonType &j, std::array< T, N > &arr, priority_tag< 2 >) -> decltype(j.template get< T >(), void()) |
|
template<typename BasicJsonType , typename ConstructibleArrayType , enable_if_t< std::is_assignable< ConstructibleArrayType &, ConstructibleArrayType >::value, int > = 0> |
auto | from_json_array_impl (const BasicJsonType &j, ConstructibleArrayType &arr, priority_tag< 1 >) -> decltype(arr.reserve(std::declval< typename ConstructibleArrayType::size_type >()), j.template get< typename ConstructibleArrayType::value_type >(), void()) |
|
template<typename BasicJsonType , typename ConstructibleArrayType , enable_if_t< std::is_assignable< ConstructibleArrayType &, ConstructibleArrayType >::value, int > = 0> |
void | from_json_array_impl (const BasicJsonType &j, ConstructibleArrayType &arr, priority_tag< 0 >) |
|
template<typename BasicJsonType , typename ConstructibleArrayType , enable_if_t< is_constructible_array_type< BasicJsonType, ConstructibleArrayType >::value &&!is_constructible_object_type< BasicJsonType, ConstructibleArrayType >::value &&!is_constructible_string_type< BasicJsonType, ConstructibleArrayType >::value &&!std::is_same< ConstructibleArrayType, typename BasicJsonType::binary_t >::value &&!is_basic_json< ConstructibleArrayType >::value, int > = 0> |
auto | from_json (const BasicJsonType &j, ConstructibleArrayType &arr) -> decltype(from_json_array_impl(j, arr, priority_tag< 3 > {}), j.template get< typename ConstructibleArrayType::value_type >(), void()) |
|
template<typename BasicJsonType , typename T , std::size_t... Idx> |
std::array< T, sizeof...(Idx)> | from_json_inplace_array_impl (BasicJsonType &&j, identity_tag< std::array< T, sizeof...(Idx)> >, index_sequence< Idx... >) |
|
template<typename BasicJsonType , typename T , std::size_t N> |
auto | from_json (BasicJsonType &&j, identity_tag< std::array< T, N > > tag) -> decltype(from_json_inplace_array_impl(std::forward< BasicJsonType >(j), tag, make_index_sequence< N > {})) |
|
template<typename BasicJsonType > |
void | from_json (const BasicJsonType &j, typename BasicJsonType::binary_t &bin) |
|
template<typename BasicJsonType , typename ConstructibleObjectType , enable_if_t< is_constructible_object_type< BasicJsonType, ConstructibleObjectType >::value, int > = 0> |
void | from_json (const BasicJsonType &j, ConstructibleObjectType &obj) |
|
template<typename BasicJsonType , typename ArithmeticType , enable_if_t< std::is_arithmetic< ArithmeticType >::value &&!std::is_same< ArithmeticType, typename BasicJsonType::number_unsigned_t >::value &&!std::is_same< ArithmeticType, typename BasicJsonType::number_integer_t >::value &&!std::is_same< ArithmeticType, typename BasicJsonType::number_float_t >::value &&!std::is_same< ArithmeticType, typename BasicJsonType::boolean_t >::value, int > = 0> |
void | from_json (const BasicJsonType &j, ArithmeticType &val) |
|
template<typename BasicJsonType , typename... Args, std::size_t... Idx> |
std::tuple< Args... > | from_json_tuple_impl_base (BasicJsonType &&j, index_sequence< Idx... >) |
|
template<typename BasicJsonType , class A1 , class A2 > |
std::pair< A1, A2 > | from_json_tuple_impl (BasicJsonType &&j, identity_tag< std::pair< A1, A2 > >, priority_tag< 0 >) |
|
template<typename BasicJsonType , typename A1 , typename A2 > |
void | from_json_tuple_impl (BasicJsonType &&j, std::pair< A1, A2 > &p, priority_tag< 1 >) |
|
template<typename BasicJsonType , typename... Args> |
std::tuple< Args... > | from_json_tuple_impl (BasicJsonType &&j, identity_tag< std::tuple< Args... > >, priority_tag< 2 >) |
|
template<typename BasicJsonType , typename... Args> |
void | from_json_tuple_impl (BasicJsonType &&j, std::tuple< Args... > &t, priority_tag< 3 >) |
|
template<typename BasicJsonType , typename TupleRelated > |
auto | from_json (BasicJsonType &&j, TupleRelated &&t) -> decltype(from_json_tuple_impl(std::forward< BasicJsonType >(j), std::forward< TupleRelated >(t), priority_tag< 3 > {})) |
|
template<typename BasicJsonType , typename Key , typename Value , typename Compare , typename Allocator , typename = enable_if_t < !std::is_constructible < typename BasicJsonType::string_t, Key >::value >> |
void | from_json (const BasicJsonType &j, std::map< Key, Value, Compare, Allocator > &m) |
|
template<typename BasicJsonType , typename Key , typename Value , typename Hash , typename KeyEqual , typename Allocator , typename = enable_if_t < !std::is_constructible < typename BasicJsonType::string_t, Key >::value >> |
void | from_json (const BasicJsonType &j, std::unordered_map< Key, Value, Hash, KeyEqual, Allocator > &m) |
|
template<typename BasicJsonType , typename T , enable_if_t< std::is_same< T, typename BasicJsonType::boolean_t >::value, int > = 0> |
void | to_json (BasicJsonType &j, T b) noexcept |
|
template<typename BasicJsonType , typename BoolRef , enable_if_t<((std::is_same< std::vector< bool >::reference, BoolRef >::value &&!std::is_same< std::vector< bool >::reference, typename BasicJsonType::boolean_t & >::value)||(std::is_same< std::vector< bool >::const_reference, BoolRef >::value &&!std::is_same< detail::uncvref_t< std::vector< bool >::const_reference >, typename BasicJsonType::boolean_t >::value)) &&std::is_convertible< const BoolRef &, typename BasicJsonType::boolean_t >::value, int > = 0> |
void | to_json (BasicJsonType &j, const BoolRef &b) noexcept |
|
template<typename BasicJsonType , typename CompatibleString , enable_if_t< std::is_constructible< typename BasicJsonType::string_t, CompatibleString >::value, int > = 0> |
void | to_json (BasicJsonType &j, const CompatibleString &s) |
|
template<typename BasicJsonType > |
void | to_json (BasicJsonType &j, typename BasicJsonType::string_t &&s) |
|
template<typename BasicJsonType , typename FloatType , enable_if_t< std::is_floating_point< FloatType >::value, int > = 0> |
void | to_json (BasicJsonType &j, FloatType val) noexcept |
|
template<typename BasicJsonType , typename CompatibleNumberUnsignedType , enable_if_t< is_compatible_integer_type< typename BasicJsonType::number_unsigned_t, CompatibleNumberUnsignedType >::value, int > = 0> |
void | to_json (BasicJsonType &j, CompatibleNumberUnsignedType val) noexcept |
|
template<typename BasicJsonType , typename CompatibleNumberIntegerType , enable_if_t< is_compatible_integer_type< typename BasicJsonType::number_integer_t, CompatibleNumberIntegerType >::value, int > = 0> |
void | to_json (BasicJsonType &j, CompatibleNumberIntegerType val) noexcept |
|
template<typename BasicJsonType , typename EnumType , enable_if_t< std::is_enum< EnumType >::value, int > = 0> |
void | to_json (BasicJsonType &j, EnumType e) noexcept |
|
template<typename BasicJsonType > |
void | to_json (BasicJsonType &j, const std::vector< bool > &e) |
|
template<typename BasicJsonType , typename CompatibleArrayType , enable_if_t< is_compatible_array_type< BasicJsonType, CompatibleArrayType >::value &&!is_compatible_object_type< BasicJsonType, CompatibleArrayType >::value &&!is_compatible_string_type< BasicJsonType, CompatibleArrayType >::value &&!std::is_same< typename BasicJsonType::binary_t, CompatibleArrayType >::value &&!is_basic_json< CompatibleArrayType >::value, int > = 0> |
void | to_json (BasicJsonType &j, const CompatibleArrayType &arr) |
|
template<typename BasicJsonType > |
void | to_json (BasicJsonType &j, const typename BasicJsonType::binary_t &bin) |
|
template<typename BasicJsonType , typename T , enable_if_t< std::is_convertible< T, BasicJsonType >::value, int > = 0> |
void | to_json (BasicJsonType &j, const std::valarray< T > &arr) |
|
template<typename BasicJsonType > |
void | to_json (BasicJsonType &j, typename BasicJsonType::array_t &&arr) |
|
template<typename BasicJsonType , typename CompatibleObjectType , enable_if_t< is_compatible_object_type< BasicJsonType, CompatibleObjectType >::value &&!is_basic_json< CompatibleObjectType >::value, int > = 0> |
void | to_json (BasicJsonType &j, const CompatibleObjectType &obj) |
|
template<typename BasicJsonType > |
void | to_json (BasicJsonType &j, typename BasicJsonType::object_t &&obj) |
|
template<typename BasicJsonType , typename T , std::size_t N, enable_if_t< !std::is_constructible< typename BasicJsonType::string_t, const T(&)[N]>::value, int > = 0> |
void | to_json (BasicJsonType &j, const T(&arr)[N]) |
|
template<typename BasicJsonType , typename T1 , typename T2 , enable_if_t< std::is_constructible< BasicJsonType, T1 >::value &&std::is_constructible< BasicJsonType, T2 >::value, int > = 0> |
void | to_json (BasicJsonType &j, const std::pair< T1, T2 > &p) |
|
template<typename BasicJsonType , typename T , enable_if_t< std::is_same< T, iteration_proxy_value< typename BasicJsonType::iterator > >::value, int > = 0> |
void | to_json (BasicJsonType &j, const T &b) |
|
template<typename BasicJsonType , typename Tuple , std::size_t... Idx> |
void | to_json_tuple_impl (BasicJsonType &j, const Tuple &t, index_sequence< Idx... >) |
|
bool | operator< (const value_t lhs, const value_t rhs) noexcept |
| comparison operator for JSON types More...
|
|
std::size_t | combine (std::size_t seed, std::size_t h) noexcept |
|
template<typename BasicJsonType > |
std::size_t | hash (const BasicJsonType &j) |
| hash a JSON value More...
|
|
template<typename StringType > |
void | replace_substring (StringType &s, const StringType &f, const StringType &t) |
| replace all occurrences of a substring by another string More...
|
|
template<typename StringType > |
StringType | escape (StringType s) |
| string escaping as described in RFC 6901 (Sect. 4) More...
|
|
template<typename StringType > |
static void | unescape (StringType &s) |
| string unescaping as described in RFC 6901 (Sect. 4) More...
|
|
template<typename T , typename... Args> |
constexpr std::array< T, sizeof...(Args)> | make_array (Args &&... args) |
|
template<typename T , typename U , enable_if_t< !std::is_same< T, U >::value, int > = 0> |
T | conditional_static_cast (U value) |
|
template<typename OfType , typename T > |
constexpr bool | value_in_range_of (T val) |
|