IceShard 1
A personal game engine project, with development focused on 2D/2.5D games.
Loading...
Searching...
No Matches
i18n_core_module.hxx
Go to the documentation of this file.
1
3
4#pragma once
6#include <ice/module.hxx>
7
8namespace ice
9{
10
11 struct I18NString;
12
13 struct I18NCoreModule : public ice::Module<I18NCoreModule>
14 {
16
17 static bool on_load(ice::Allocator& alloc, ice::ModuleNegotiator auto const& negotiator) noexcept;
18 static void on_unload(ice::Allocator& alloc) noexcept;
19
20 static void init(const Allocator& alloc, ice::ModuleNegotiatorBase const& negotiator) noexcept;
21
22 static auto resolve(ice::I18NReference const& reference) noexcept -> ice::String;
23 static auto resolve(ice::I18NReference const& reference, fmt::format_args const& fmt_args) noexcept -> ice::String;
24 static void resolve(ice::I18NString& text, ice::I18NReference const& reference) noexcept;
25
27 };
28
29} // namespace ice
Definition i18n_reference.hxx:12
Base class for modules that will automatically register them to be loaded by the module manager.
Definition module.hxx:17
Helper type over the ModuleNegotiatorAPI type.
Definition module_negotiator.hxx:51
Definition devui_module.hxx:16
Root namespace for all APIs part of the IceShard engine project.
Definition array.hxx:12
ice::BasicString< char > String
Definition string.hxx:82
auto alloc(ice::usize size) noexcept -> ice::AllocResult
ice::AllocatorBase< ice::build::is_debug||ice::build::is_develop > Allocator
Definition mem_types.hxx:25
Definition i18n_core_module.hxx:14
static void on_unload(ice::Allocator &alloc) noexcept
IS_WORKAROUND_MODULE_INITIALIZATION(I18NCoreModule)
static auto resolve(ice::I18NReference const &reference) noexcept -> ice::String
static void v1_i18n_api(ice::api::i18n::v1::I18NCoreModuleAPI &api) noexcept
static auto resolve(ice::I18NReference const &reference, fmt::format_args const &fmt_args) noexcept -> ice::String
static bool on_load(ice::Allocator &alloc, ice::ModuleNegotiator auto const &negotiator) noexcept
static void resolve(ice::I18NString &text, ice::I18NReference const &reference) noexcept
static void init(const Allocator &alloc, ice::ModuleNegotiatorBase const &negotiator) noexcept
Definition i18n_string.hxx:12
Definition i18n_core_api.hxx:14