MCPcopy Create free account
hub / github.com/FlaxEngine/FlaxEngine / loadAsset

Method loadAsset

Source/Engine/Localization/LocalizedStringTable.cpp:61–96  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

59}
60
61Asset::LoadResult LocalizedStringTable::loadAsset()
62{
63 PROFILE_MEM(Localization);
64
65 // Base
66 auto result = JsonAssetBase::loadAsset();
67 if (result != LoadResult::Ok || IsInternalType())
68 return result;
69
70 JsonTools::GetString(Locale, *Data, "Locale");
71 JsonTools::GetReference(FallbackTable, *Data, "FallbackTable");
72 const auto entriesMember = SERIALIZE_FIND_MEMBER((*Data), "Entries");
73 if (entriesMember != Data->MemberEnd() && entriesMember->value.IsObject())
74 {
75 Entries.EnsureCapacity(entriesMember->value.MemberCount());
76 for (auto i = entriesMember->value.MemberBegin(); i != entriesMember->value.MemberEnd(); ++i)
77 {
78 const String key(i->name.GetText());
79 auto& e = Entries[key];
80 auto& value = i->value;
81 if (value.IsString())
82 {
83 e.Resize(1);
84 e[0] = value.GetText();
85 }
86 else if (value.IsArray())
87 {
88 e.Resize(value.Size());
89 for (int32 q = 0; q < e.Count(); q++)
90 e[q] = value[q].GetText();
91 }
92 }
93 }
94
95 return result;
96}
97
98void LocalizedStringTable::unload(bool isReloading)
99{

Callers

nothing calls this directly

Calls 10

GetReferenceFunction · 0.85
MemberEndMethod · 0.80
MemberCountMethod · 0.80
MemberBeginMethod · 0.80
GetStringFunction · 0.50
EnsureCapacityMethod · 0.45
GetTextMethod · 0.45
ResizeMethod · 0.45
SizeMethod · 0.45
CountMethod · 0.45

Tested by

no test coverage detected