inline C const* integer_to_string(C *buf, ss_size_t cchBuf, ss_sint64_t const& i) { #ifdef STLSOFT_INTEGER_TO_STRING_OPTIMISE_64BIT if(i < 0x80000000) { return signed_integer_to_string(buf, cchBuf, static_cast<ss_sint32_t>(i)); } #endif // STLSOFT_INTEGER_TO_STRING_OPTIMISE_64BIT return signed_integer_to_string(buf, cchBuf, i); }
inline C const* integer_to_string(C (&buf)[N], ss_sint64_t const& i) { STLSOFT_STATIC_ASSERT(!(N < 21)); #ifdef STLSOFT_INTEGER_TO_STRING_OPTIMISE_64BIT if(i < 0x80000000) { return signed_integer_to_string(buf, N, static_cast<ss_sint32_t>(i)); } #endif // STLSOFT_INTEGER_TO_STRING_OPTIMISE_64BIT return signed_integer_to_string(buf, N, i); }
inline C const* integer_to_string(C* buf, ss_size_t cchBuf, ss_sint64_t const& i, ss_size_t* pcchRes) { STLSOFT_ASSERT(NULL != pcchRes); return signed_integer_to_string(buf, cchBuf, i, pcchRes); }
inline C const* integer_to_string(C (&buf)[N], ss_sint32_t i) { STLSOFT_STATIC_ASSERT(!(N < 12)); return signed_integer_to_string(buf, N, i); }
inline C const* integer_to_string(C *buf, ss_size_t cchBuf, long i, ss_size_t &cchRes) { return signed_integer_to_string(buf, cchBuf, i, cchRes); }
inline C const* integer_to_string(C *buf, ss_size_t cchBuf, ss_int_t i) { return signed_integer_to_string(buf, cchBuf, i); }
inline C const* integer_to_string(C (&buf)[N], unsigned long i) { return signed_integer_to_string(buf, N, i); }