IceShard 1
A personal game engine project, with development focused on 2D/2.5D games.
Loading...
Searching...
No Matches
i18n_string.hxx
Go to the documentation of this file.
1
3
4#pragma once
6#include <ice/string.hxx>
7
8namespace ice
9{
10
12 {
13 using CharType = char;
14 using ValueType = CharType const;
16 using ConstReverseIterator = std::reverse_iterator<ValueType*>;
21
22 I18NString(ice::String text) noexcept;
23 I18NString(ice::I18NReference reference) noexcept;
24
25 bool resolve() noexcept;
26 auto data() const noexcept -> ValueType*;
27 auto size() const noexcept -> SizeType;
28
29 operator ice::String() const noexcept { return { data(), size() }; }
30
31 public:
32 // Keep one pointer, and depending on the offset, either each for the dynamic values or the static values.
33 void const* _data = nullptr;
34 ice::i32 _data_offset = 0; // > 0 == not-resolved, < 0 == resolved
36 };
37
38} // namespace ice
Definition i18n_reference.hxx:12
Root namespace for all APIs part of the IceShard engine project.
Definition array.hxx:12
ice::BasicString< char > String
Definition string.hxx:82
std::int32_t i32
Definition types.hxx:21
std::reverse_iterator< ValueType * > ConstReverseIterator
Definition i18n_string.hxx:16
auto size() const noexcept -> SizeType
ice::i32 _data_offset
Definition i18n_string.hxx:34
ice::i32 _size_offset
Definition i18n_string.hxx:35
ValueType * ConstIterator
Definition i18n_string.hxx:15
bool resolve() noexcept
ice::String StringType
Definition i18n_string.hxx:20
operator ice::String() const noexcept
Definition i18n_string.hxx:29
I18NString(ice::I18NReference reference) noexcept
auto data() const noexcept -> ValueType *
ice::ncount SizeType
Definition i18n_string.hxx:19
CharType const ValueType
Definition i18n_string.hxx:14
I18NString(ice::String text) noexcept
char CharType
Definition i18n_string.hxx:13
ConstIterator Iterator
Definition i18n_string.hxx:17
ConstReverseIterator ReverseIterator
Definition i18n_string.hxx:18
void const * _data
Definition i18n_string.hxx:33
Definition ncount.hxx:14
Definition readonly_operations.hxx:14