// xcharconv.h internal header // Copyright (c) Microsoft Corporation. All rights reserved. #pragma once #ifndef _XCHARCONV_H #define _XCHARCONV_H #ifndef RC_INVOKED #include #include #include #if !_HAS_CXX17 #error The contents of are only available with C++17. (Also, you should not include this internal header.) #endif /* !_HAS_CXX17 */ #pragma pack(push,_CRT_PACKING) #pragma warning(push,_STL_WARNING_LEVEL) #pragma warning(disable: _STL_DISABLED_WARNINGS) _STL_DISABLE_CLANG_WARNINGS #pragma push_macro("new") #undef new _STD_BEGIN // ENUM CLASS chars_format enum class chars_format { scientific = 0b001, fixed = 0b010, hex = 0b100, general = fixed | scientific }; _BITMASK_OPS(chars_format) // STRUCT to_chars_result struct to_chars_result { char * ptr; errc ec; }; // FUNCTION _Print_exact_integer_from_float inline void _Print_exact_integer_from_float(char * _First, uint32_t _IeeeMantissa, uint32_t _IeeeExponent, uint32_t _Total_fixed_length); // FUNCTION _Print_exact_integer_from_double inline void _Print_exact_integer_from_double(char * _First, uint64_t _IeeeMantissa, uint32_t _IeeeExponent, uint32_t _Total_fixed_length); _STD_END #pragma pop_macro("new") _STL_RESTORE_CLANG_WARNINGS #pragma warning(pop) #pragma pack(pop) #endif /* RC_INVOKED */ #endif /* _XCHARCONV_H */