5#define __XTD_CORE_INTERNAL__
7#undef __XTD_CORE_INTERNAL__
27 using string = xtd::basic_string<char>;
39 using ustring [[deprecated(
"Replaced by xtd::string - Will be removed in version 1.2.0.")]] =
xtd::string;
80 template<
typename type_t>
89 template<
typename type_t>
90 [[deprecated(
"Replaced by xtd::to_string - Will be removed in version 1.2.0.")]]
96 namespace collections {
98 template<
typename type_t>
101 for (
auto item :
self_)
107 template<
typename char_t,
typename other_t>
108 requires (xtd::stringable<other_t> && !xtd::textual<other_t> && !xtd::character<other_t>)
109 auto operator +=(xtd::basic_string<char_t>&
first,
const other_t& second) -> xtd::basic_string<char_t>& {
114 template<
typename char_t,
typename other_t>
115 requires (xtd::stringable<other_t> && !xtd::textual<other_t> && !xtd::character<other_t>)
116 auto operator +(
const xtd::basic_string<char_t>&
first,
const other_t& second) -> xtd::basic_string<char_t> {
120 template<
typename char_t,
typename other_t>
121 requires (xtd::stringable<other_t> && !xtd::textual<other_t> && !xtd::character<other_t>)
122 auto operator +(
const char_t*
first,
const other_t& second) -> xtd::basic_string<char_t> {
126 template<
typename char_t,
typename other_t>
127 requires (xtd::stringable<other_t> && !xtd::textual<other_t> && !xtd::character<other_t>)
128 auto operator +(
const other_t&
first,
const xtd::basic_string<char_t>& second) -> xtd::basic_string<char_t> {
132 template<
typename char_t,
typename other_t>
133 requires (xtd::stringable<other_t> && !xtd::textual<other_t> && !xtd::character<other_t>)
134 auto operator +(
const other_t&
first,
const char_t* second) -> xtd::basic_string<char_t> {
141template<
typename char_t,
typename traits_t,
typename allocator_t>
144template<
typename char_t,
typename traits_t,
typename allocator_t>
147template<
typename type_t>
149 return obj->to_string();
152template<
typename key_t,
typename value_t>
156 for (
auto index =
xtd::usize {}; index < count; ++index)
161 for (
auto index =
xtd::usize {}; index < count; ++index)
166 for (
auto index =
xtd::usize {}; index < count; ++index)
171 for (
auto index =
xtd::usize {}; index < count; ++index)
176 for (
auto index =
xtd::usize {}; index < count; ++index)
180template<
typename type_t>
183template<
typename type_t,
typename param_t>
186template<
typename type_t>
189template<
typename type_t>
190[[nodiscard]]
inline auto xtd::shared_ptr_object<type_t>::to_string() const noexcept ->
xtd::
string {
return xtd::string::format(
"{} [pointer={}]",
xtd::object::to_string(), ptr_ ==
xtd::null ?
"null" : string::format(
"0x{:X16}, use_count={}", get(), use_count()));}
192template<
typename type_t,
typename deleter_t>
197#define __XTD_CORE_INTERNAL__
199#undef __XTD_CORE_INTERNAL__
Contains xtd::basic_string class.
Contains xtd::character concept.
static auto join(const basic_string &separator, const collection_t &values) noexcept -> basic_string
Definition basic_string.hpp:1241
auto operator[](xtd::usize index) const -> const_reference
Returns a reference to the character at specified location index.
Definition basic_string.hpp:1379
auto operator()(xtd::usize index) const -> const_reference
Returns a reference to the character at specified location index.
Definition basic_string.hpp:1397
Represents an enumerable generator that supports deferred, lazy iteration over a collection of a spec...
Definition enumerable_generator.hpp:45
Provides a way to represent the current object as a string.
Definition istringable.hpp:26
static auto repeat(const element_t &element, xtd::usize count) -> xtd::collections::generic::enumerable_generator< element_t >
Generates a sequence that contains one repeated value.
virtual auto to_string() const -> xtd::string
Returns a xtd::string that represents the current object.
Contains xtd::collections::generic::enumerable_generator <> class.
#define self_
The self_ expression is a reference value expression whose value is the reference of the implicit obj...
Definition self.hpp:20
xtd::basic_string< char > string
Represents text as a sequence of UTF-8 code units.
Definition __string_definitions.hpp:43
xtd::string ustring
Represents text as a sequence of UTF-8 code units.
char8_t char8
Represents a 8-bit unicode character.
Definition char8.hpp:26
null_ptr null
Represents a null pointer value.
wchar_t wchar
Represents a wide character.
Definition wchar.hpp:24
char16_t char16
Represents a 16-bit unicode character.
Definition char16.hpp:26
std::size_t usize
Represents an unsigned size of any object in bytes.
Definition usize.hpp:22
char32_t char32
Represents a 32-bit unicode character.
Definition char32.hpp:23
Contains xtd::index struct.
Contains xtd::collections::generic::key_value_pair <key_t, value_t> struct.
Contains xtd::linq::enumerable <type_t> class.
Contains xtd::string suffixes.
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition abstract_object.hpp:8
auto first() const -> read_only_span< type_t, count >
Obtains a subspan consisting of the first count elements of the sequence.
Definition read_only_span.hpp:245
auto to_string() const noexcept -> xtd::string override
Returns the string representation of this xtd::read_only_span <type_t> object.
Definition read_only_span.hpp:354
const type_t & const_reference
Represents the read_only_span const reference type.
Definition read_only_span.hpp:75
auto to_ustring(type_t val) -> xtd::string
Converts a type_t to xtd::string.
Definition string.hpp:91
constexpr auto length() const noexcept -> size_type
Returns the length of the current read_only_span.
Definition read_only_span.hpp:209
Contains xtd::stringable concept.
Represents a type that can be used to index a collection either from the beginning or the end.
Definition index.hpp:38