IceShard 1
A personal game engine project, with development focused on 2D/2.5D games.
Loading...
Searching...
No Matches
string_utils.hxx File Reference
#include <ice/string.hxx>
#include <ice/static_string.hxx>
#include <ice/heap_string.hxx>
#include <ice/log_formatters.hxx>
#include <ice/expected.hxx>
#include <ice/math.hxx>
#include <charconv>
#include <numeric>

Go to the source code of this file.

Classes

struct  ice::FromCharsResult< StrType >

Namespaces

namespace  ice
 SPDX-License-Identifier: MIT.
namespace  ice::string

Enumerations

enum class  ice::CaseSensitive : bool { ice::No , ice::Yes }
enum class  ice::CompareResult : ice::i8 { ice::Smaller = -1 , ice::Equal = 0 , ice::Larger = 1 }

Functions

template<typename Fn>
constexpr auto ice::string::for_each_split (ice::String contents, ice::String separators, Fn &&fn) noexcept -> ice::u32
auto ice::compare (ice::String left, ice::String right, ice::CaseSensitive=CaseSensitive::No) noexcept -> ice::CompareResult
auto ice::compare (ice::String left, ice::String right, ice::u64 count, ice::CaseSensitive=CaseSensitive::No) noexcept -> ice::CompareResult
auto ice::utf8_to_wide_size (ice::String path) noexcept -> ice::u32
bool ice::utf8_to_wide_append (ice::String path, ice::HeapString< ice::wchar > &out_str) noexcept
auto ice::utf8_to_wide (ice::Allocator &alloc, ice::String path) noexcept -> ice::HeapString< ice::wchar >
auto ice::wide_to_utf8_size (ice::WString path) noexcept -> ice::u32
bool ice::wide_to_utf8_append (ice::WString path, ice::HeapString<> &out_str) noexcept
auto ice::wide_to_utf8 (ice::Allocator &alloc, ice::WString path) noexcept -> ice::HeapString<>
template<typename T>
requires (std::is_integral_v<T> || std::is_floating_point_v<T>)
auto ice::from_chars (ice::String str, T &out_value) noexcept -> ice::FromCharsResult< ice::String >
template<typename T>
requires (std::is_integral_v<T> || std::is_floating_point_v<T>)
auto ice::from_chars (char const *str_beg, char const *str_end, T &out_value) noexcept -> ice::FromCharsResult< char const * >
template<typename T>
requires (std::is_integral_v<T> || std::is_floating_point_v<T>)
auto ice::from_chars (ice::String str, ice::String &out_str, T &out_value) noexcept -> ice::ErrorCode
auto ice::from_chars (ice::String str, bool &out_value) noexcept -> ice::FromCharsResult< ice::String >
auto ice::from_chars (ice::String str, ice::String &out_str, bool &out_value) noexcept -> ice::ErrorCode