LeviLamina
Loading...
Searching...
No Matches
I18n.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/threading/Async.h"
7#include "mc/deps/core/utility/NonOwnerPointer.h"
8
9// auto generated forward declare list
10// clang-format off
11class I18nObserver;
12class Localization;
14class PackManifest;
17// clang-format on
18
19class I18n {
20public:
21 // virtual functions
22 // NOLINTBEGIN
23 virtual ~I18n();
24
25 virtual void clearLanguages() = 0;
26
27 virtual ::std::vector<::std::string> findAvailableLanguages(::ResourcePackManager&) = 0;
28
29 virtual ::std::unordered_map<::std::string, ::std::string> findAvailableLanguageNames(::ResourcePackManager&) = 0;
30
31 virtual ::Bedrock::Threading::Async<void> loadLanguages(
33 ::Bedrock::NotNullNonOwnerPtr<::ResourceLoadManager>,
34 ::std::string const&
35 ) = 0;
36
37 virtual void loadAllLanguages(::ResourcePackManager&) = 0;
38
39 virtual ::std::vector<::std::string> getLanguageCodesFromPack(::PackAccessStrategy const&) = 0;
40
41 virtual void loadLanguageKeywordsFromPack(::PackManifest const&, ::PackAccessStrategy const&) = 0;
42
43 virtual void loadLanguageKeywordsFromPack(
44 ::PackManifest const&,
46 ::std::vector<::std::string> const&,
47 ::std::optional<::std::vector<::std::string>> const&
48 ) = 0;
49
50 virtual void appendLanguageStringsFromPack(
51 ::PackManifest const&,
52 ::std::multimap<::std::string, ::std::pair<::std::string, ::std::string>> const&
53 ) = 0;
54
55 virtual ::std::unordered_map<::std::string, ::std::string>
56 getLanguageKeywordsFromPack(::PackManifest const&, ::std::string const&) = 0;
57
58 virtual void loadLangaugesByLocale(
59 ::std::unordered_multimap<::std::string, ::std::pair<::std::string, ::std::string>> const&
60 ) = 0;
61
62 virtual void
63 appendAdditionalTranslations(::std::unordered_map<::std::string, ::std::string> const&, ::std::string const&) = 0;
64
65 virtual void appendLanguageStrings(::PackAccessStrategy*) = 0;
66
67 virtual void addI18nObserver(::I18nObserver&) = 0;
68
69 virtual void chooseLanguage(::std::string const&) = 0;
70
71 virtual ::std::string
72 get(::std::string const&, ::std::vector<::std::string> const&, ::std::shared_ptr<::Localization const> const) = 0;
73
74 virtual ::std::string get(::std::string const&, ::std::shared_ptr<::Localization const> const) = 0;
75
76 virtual ::std::string getPackKeywordValue(::PackManifest const&, ::std::string const&) = 0;
77
78 virtual ::std::string getPackKeywordValueForTelemetry(::PackManifest const&, ::std::string const&) = 0;
79
80 virtual bool hasPackKeyEntry(::PackManifest const&, ::std::string const&) = 0;
81
82 virtual ::std::vector<::std::string> const& getSupportedLanguageCodes() = 0;
83
84 virtual ::std::string const& getLanguageName(::std::string const&) = 0;
85
86 virtual ::std::shared_ptr<::Localization const> const getLocaleFor(::std::string const&) = 0;
87
88 virtual ::std::string const& getLocaleCodeFor(::std::string const&) = 0;
89
90 virtual ::gsl::not_null<::std::shared_ptr<::Localization const>> getCurrentLanguage() = 0;
91
92 virtual bool languageSupportsHypenSplitting() = 0;
93
94 virtual ::std::string getLocalizedAssetFileWithFallback(::std::string const&, ::std::string const&) = 0;
95
96 virtual bool isPackKeyword(::std::string const&) = 0;
97 // NOLINTEND
98
99public:
100 // static variables
101 // NOLINTBEGIN
102 MCNAPI static ::std::add_lvalue_reference_t<char const[]> NeutralLangCode();
103 // NOLINTEND
104
105public:
106 // destructor thunk
107 // NOLINTBEGIN
108 MCNAPI void $dtor();
109 // NOLINTEND
110
111public:
112 // virtual function thunks
113 // NOLINTBEGIN
114
115 // NOLINTEND
116
117public:
118 // vftables
119 // NOLINTBEGIN
120 MCNAPI static void** $vftable();
121 // NOLINTEND
122};
123
124MCAPI I18n& getI18n();
Definition I18nObserver.h:14
Definition I18n.h:19
static MCAPI ::std::add_lvalue_reference_t< char const[]> NeutralLangCode()
MCAPI void $dtor()
static MCAPI void ** $vftable()
Definition Localization.h:15
Definition PackAccessStrategy.h:21
Definition PackManifest.h:37
Definition ResourceLoadManager.h:18
Definition ResourcePackManager.h:29