xtd 0.2.0
Loading...
Searching...
No Matches
to_string.hpp
Go to the documentation of this file.
1
4#pragma once
6#define __XTD_CORE_INTERNAL__
18#undef __XTD_CORE_INTERNAL__
19#define __XTD_STD_INTERNAL__
21#undef __XTD_STD_INTERNAL__
25#include "types.hpp"
26#include "string.hpp"
27
29namespace xtd {
40 template<class value_t>
41 inline xtd::string to_string(const value_t& value, const xtd::string& fmt, const std::locale& loc);
42
53 template<>
54 inline xtd::string to_string(const bool& value, const xtd::string& fmt, const std::locale& loc);
55
66 template<>
67 inline xtd::string to_string(const sbyte& value, const xtd::string& fmt, const std::locale& loc);
68
79 template<>
80 inline xtd::string to_string(const char& value, const xtd::string& fmt, const std::locale& loc);
81
92 template<>
93 inline xtd::string to_string(const unsigned char& value, const xtd::string& fmt, const std::locale& loc);
94
105 template<>
106 inline xtd::string to_string(const short& value, const xtd::string& fmt, const std::locale& loc);
107
118 template<>
119 inline xtd::string to_string(const unsigned short& value, const xtd::string& fmt, const std::locale& loc);
120
131 template<>
132 inline xtd::string to_string(const int& value, const xtd::string& fmt, const std::locale& loc);
133
144 template<>
145 inline xtd::string to_string(const unsigned int& value, const xtd::string& fmt, const std::locale& loc);
146
157 template<>
158 inline xtd::string to_string(const long& value, const xtd::string& fmt, const std::locale& loc);
159
170 template<>
171 inline xtd::string to_string(const unsigned long& value, const xtd::string& fmt, const std::locale& loc);
172
183 template<>
184 inline xtd::string to_string(const long long& value, const xtd::string& fmt, const std::locale& loc);
185
196 template<>
197 inline xtd::string to_string(const unsigned long long& value, const xtd::string& fmt, const std::locale& loc);
198
209 template<>
210 inline xtd::string to_string(const float& value, const xtd::string& fmt, const std::locale& loc);
211
222 template<>
223 inline xtd::string to_string(const double& value, const xtd::string& fmt, const std::locale& loc);
224
235 template<>
236 inline xtd::string to_string(const long double& value, const xtd::string& fmt, const std::locale& loc);
237
248 template<>
249 inline xtd::string to_string(const std::chrono::system_clock::time_point& value, const xtd::string& fmt, const std::locale& loc);
250
261 template<>
262 inline xtd::string to_string(const std::tm& value, const xtd::string& fmt, const std::locale& loc);
263
274 template<class type_t, class period_t>
275 inline xtd::string to_string(const std::chrono::duration<type_t, period_t>& value, const xtd::string& fmt, const std::locale& loc);
276
287 template<>
288 inline xtd::string to_string(const char8& value, const xtd::string& fmt, const std::locale& loc);
289
300 template<>
301 inline xtd::string to_string(const char16& value, const xtd::string& fmt, const std::locale& loc);
302
313 template<>
314 inline xtd::string to_string(const char32& value, const xtd::string& fmt, const std::locale& loc);
315
326 template<>
327 inline xtd::string to_string(const wchar& value, const xtd::string& fmt, const std::locale& loc);
328
330 xtd::string to_string(const char* value, const xtd::string& fmt, const std::locale& loc);
331 xtd::string to_string(const char8* value, const xtd::string& fmt, const std::locale& loc);
332 xtd::string to_string(const char16* value, const xtd::string& fmt, const std::locale& loc);
333 xtd::string to_string(const char32* value, const xtd::string& fmt, const std::locale& loc);
334 xtd::string to_string(const wchar* value, const xtd::string& fmt, const std::locale& loc);
335 xtd::string to_string(const std::string& value, const xtd::string& fmt, const std::locale& loc);
336 xtd::string to_string(const xtd::string& value, const xtd::string& fmt, const std::locale& loc);
337 xtd::string to_string(const std::u8string& value, const xtd::string& fmt, const std::locale& loc);
338 xtd::string to_string(const std::u16string& value, const xtd::string& fmt, const std::locale& loc);
339 xtd::string to_string(const std::u32string& value, const xtd::string& fmt, const std::locale& loc);
340 xtd::string to_string(const std::wstring& value, const xtd::string& fmt, const std::locale& loc);
342
352 template<class value_t>
353 inline xtd::string to_string(const value_t& value, const xtd::string& fmt);
354
356 inline xtd::string to_string(const char* value, const xtd::string& fmt);
357
358 template<>
359 inline xtd::string to_string(const std::partial_ordering& value, const xtd::string& fmt, const std::locale& loc);
360
361 template<>
362 inline xtd::string to_string(const std::strong_ordering& value, const xtd::string& fmt, const std::locale& loc);
363
364 template<>
365 inline xtd::string to_string(const std::weak_ordering& value, const xtd::string& fmt, const std::locale& loc);
366
367 template<class value_t>
368 inline xtd::string to_string(const value_t* value, const xtd::string& fmt, const std::locale& loc);
369
370 template<class value_t>
371 inline xtd::string to_string(value_t* const value, const xtd::string& fmt, const std::locale& loc);
372
373 template<class type_t>
374 inline xtd::string to_string(const std::shared_ptr<type_t>& value, const xtd::string& fmt, const std::locale& loc);
375
376 template<class type_t>
377 inline xtd::string to_string(const std::unique_ptr<type_t>& value, const xtd::string& fmt, const std::locale& loc);
378
379 template<>
380 inline xtd::string to_string(const xtd::any& value, const xtd::string& fmt, const std::locale& loc);
381
382 template<class type_t>
383 inline xtd::string to_string(const std::optional<type_t>& value, const xtd::string& fmt, const std::locale& loc);
384
385 template<>
386 inline xtd::string to_string(const std::nullopt_t& value, const xtd::string& fmt, const std::locale& loc);
387
388 template<>
389 inline xtd::string to_string(const std::nullptr_t&, const xtd::string& fmt, const std::locale& loc);
390
391 template<class type1_t, class type2_t>
392 inline xtd::string to_string(const std::pair<type1_t, type2_t>& value, const xtd::string& fmt, const std::locale& loc);
393
394 template<class type_t, unsigned n_t, unsigned last_t>
395 struct __xtd_tuple_stringer {
396 static xtd::string to_string(const std::string& str, const type_t& value, const xtd::string& fmt, const std::locale& loc);
397 };
398
399 template<class type_t, unsigned n_t>
400 struct __xtd_tuple_stringer<type_t, n_t, n_t> {
401 static xtd::string to_string(const std::string& str, const type_t& value, const xtd::string& fmt, const std::locale& loc);
402 };
403
404 template<class ...types_t>
405 inline xtd::string to_string(const std::tuple<types_t ...>& value, const xtd::string& fmt, const std::locale& loc);
406
407 template<class type_t, size_t size>
408 inline xtd::string to_string(const std::array<type_t, size>& values, const xtd::string& fmt, const std::locale& loc);
409
410 template<class type_t, class allocator_t>
411 inline xtd::string to_string(const std::deque<type_t, allocator_t>& values, const xtd::string& fmt, const std::locale& loc);
412
413 template<class type_t, class allocator_t>
414 inline xtd::string to_string(const std::forward_list<type_t, allocator_t>& values, const xtd::string& fmt, const std::locale& loc);
415
416 template<class type_t>
417 inline xtd::string to_string(const std::initializer_list<type_t>& values, const xtd::string& fmt, const std::locale& loc);
418
419 template<class type_t, class allocator_t>
420 inline xtd::string to_string(const std::list<type_t, allocator_t>& values, const xtd::string& fmt, const std::locale& loc);
421
422 template<class type_t>
423 inline xtd::string to_string(const std::valarray<type_t>& values, const xtd::string& fmt, const std::locale& loc);
424
425 template<class type_t, class allocator_t>
426 inline xtd::string to_string(const std::vector<type_t, allocator_t>& values, const xtd::string& fmt, const std::locale& loc);
427
428 template<class key_t, class value_t, class compare_t, class allocator_t>
429 inline xtd::string to_string(const std::map<key_t, value_t, compare_t, allocator_t>& values, const xtd::string& fmt, const std::locale& loc);
430
431 template<class key_t, class value_t, class compare_t, class allocator_t>
432 inline xtd::string to_string(const std::multimap<key_t, value_t, compare_t, allocator_t>& values, const xtd::string& fmt, const std::locale& loc);
433
434 template<class key_t, class compare_t, class allocator_t>
435 inline xtd::string to_string(const std::multiset<key_t, compare_t, allocator_t>& values, const xtd::string& fmt, const std::locale& loc);
436
437 template<class key_t, class compare_t, class allocator_t>
438 inline xtd::string to_string(const std::set<key_t, compare_t, allocator_t>& values, const xtd::string& fmt, const std::locale& loc);
439
440 template<class key_t, class value_t, class compare_t, class allocator_t>
441 inline xtd::string to_string(const std::unordered_map<key_t, value_t, compare_t, allocator_t>& values, const xtd::string& fmt, const std::locale& loc);
442
443 template<class key_t, class value_t, class compare_t, class allocator_t>
444 inline xtd::string to_string(const std::unordered_multimap<key_t, value_t, compare_t, allocator_t>& values, const xtd::string& fmt, const std::locale& loc);
445
446 template<class key_t, class compare_t, class allocator_t>
447 inline xtd::string to_string(const std::unordered_multiset<key_t, compare_t, allocator_t>& values, const xtd::string& fmt, const std::locale& loc);
448
449 template<class key_t, class compare_t, class allocator_t>
450 inline xtd::string to_string(const std::unordered_set<key_t, compare_t, allocator_t>& values, const xtd::string& fmt, const std::locale& loc);
451
452 template<class type_t>
453 inline xtd::string to_string(type_t value, const std::initializer_list<std::pair<type_t, xtd::string>>& il);
454
455 #if defined(__xtd__cpp_lib_ranges)
456 //template <std::ranges::range range_t>
457 //inline xtd::string to_string(const range_t& values, const xtd::string& fmt, const std::locale& loc);
458
459 //template <std::ranges::range range_t>
460 //inline xtd::string to_string(const range_t& values, const xtd::string& fmt, const std::locale& loc);
461 #endif
462
463 template<class type_t>
464 inline xtd::string to_string(const xtd::collections::generic::ienumerable<type_t>& values, const xtd::string& fmt, const std::locale& loc);
465
466 template<class type_t>
467 inline xtd::string to_string(const __xtd_raw_array_data__<type_t>& values, const xtd::string& fmt, const std::locale& loc);
468
469 template<class type_t, class string_t>
470 inline string_t to_string(type_t value, const std::map<type_t, string_t, std::greater<type_t>>& values);
471
472 template<class type_t, class string_t>
473 inline string_t to_string(type_t value, const std::map<type_t, string_t>& values);
475}
476
477#define __XTD_TO_STRING_INTERNAL__
478#include "to_string_.hpp"
479#undef __XTD_TO_STRING_INTERNAL__
Contains __binary_formatter method.
Contains __boolean_formatter method.
Contains __character_formatter method.
Contains __currency_formatter method.
Contains __date_time_formatter method.
Contains __duration_formatter method.
Contains __floating_point_formatter method.
Contains __format_stringer methods.
Contains __iformatable_formatter method.
Contains __natural_formatter method.
Contains __numeric_formatter method.
Contains __xtd_std_version definitions.
Contains generic stream output methods.
xtd::basic_string< char > string
Represents text as a sequence of UTF-8 code units.
Definition __string_definitions.hpp:43
char8_t char8
Represents a 8-bit unicode character.
Definition char8.hpp:26
std::int8_t sbyte
Represents a 8-bit signed integer.
Definition sbyte.hpp:23
wchar_t wchar
Represents a wide character.
Definition wchar.hpp:24
char16_t char16
Represents a 16-bit unicode character.
Definition char16.hpp:26
char32_t char32
Represents a 32-bit unicode character.
Definition char32.hpp:23
std::any any
Represents the any alias on std::any.
Definition any.hpp:24
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition abstract_object.hpp:8
string to_string() const noexcept override
Returns the string representation of this xtd::read_only_span <type_t> object.
Definition read_only_span.hpp:375
Contains xtd::register_any_stringer and xtd::unregister_any_stringer method.
Contains xtd::string alias.
Contains xtd::to_string methods.
Contains xtd fundamental types.