mirror of
https://github.com/Laupetin/OpenAssetTools.git
synced 2025-04-20 00:02:55 +00:00
Communicate to the asset loader when parsing localize file failed
This commit is contained in:
parent
eb065658e6
commit
9d0beaa8fc
@ -28,7 +28,10 @@ bool LocalizeCommonAssetLoader::LoadLocalizeAsset(const std::string& assetName,
|
|||||||
|
|
||||||
auto* zoneState = manager->GetAssetLoadingContext()->GetZoneAssetLoaderState<LocalizeReadingZoneState>();
|
auto* zoneState = manager->GetAssetLoadingContext()->GetZoneAssetLoaderState<LocalizeReadingZoneState>();
|
||||||
LocalizeFileReader reader(*file.m_stream, assetName, zone->m_language, zoneState);
|
LocalizeFileReader reader(*file.m_stream, assetName, zone->m_language, zoneState);
|
||||||
const auto localizeEntries = reader.ReadLocalizeFile();
|
|
||||||
|
std::vector<CommonLocalizeEntry> localizeEntries;
|
||||||
|
if (!reader.ReadLocalizeFile(localizeEntries))
|
||||||
|
return false;
|
||||||
|
|
||||||
for (const auto& entry : localizeEntries)
|
for (const auto& entry : localizeEntries)
|
||||||
{
|
{
|
||||||
|
@ -28,7 +28,7 @@ void LocalizeFileReader::SetupStreamProxies()
|
|||||||
m_stream = m_open_streams.back().get();
|
m_stream = m_open_streams.back().get();
|
||||||
}
|
}
|
||||||
|
|
||||||
std::vector<CommonLocalizeEntry> LocalizeFileReader::ReadLocalizeFile()
|
bool LocalizeFileReader::ReadLocalizeFile(std::vector<CommonLocalizeEntry>& entries)
|
||||||
{
|
{
|
||||||
SimpleLexer::Config lexerConfig;
|
SimpleLexer::Config lexerConfig;
|
||||||
lexerConfig.m_emit_new_line_tokens = true;
|
lexerConfig.m_emit_new_line_tokens = true;
|
||||||
@ -41,8 +41,11 @@ std::vector<CommonLocalizeEntry> LocalizeFileReader::ReadLocalizeFile()
|
|||||||
const auto parser = std::make_unique<LocalizeFileParser>(lexer.get(), m_language, m_zone_state);
|
const auto parser = std::make_unique<LocalizeFileParser>(lexer.get(), m_language, m_zone_state);
|
||||||
|
|
||||||
if (parser->Parse())
|
if (parser->Parse())
|
||||||
return parser->GetParsedValues();
|
{
|
||||||
|
entries = parser->GetParsedValues();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
std::cerr << "Parsing localization file failed!" << std::endl;
|
std::cerr << "Parsing localization file failed!" << std::endl;
|
||||||
return std::vector<CommonLocalizeEntry>();
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -24,5 +24,5 @@ class LocalizeFileReader
|
|||||||
public:
|
public:
|
||||||
LocalizeFileReader(std::istream& stream, std::string fileName, GameLanguage language, LocalizeReadingZoneState* zoneState);
|
LocalizeFileReader(std::istream& stream, std::string fileName, GameLanguage language, LocalizeReadingZoneState* zoneState);
|
||||||
|
|
||||||
std::vector<CommonLocalizeEntry> ReadLocalizeFile();
|
bool ReadLocalizeFile(std::vector<CommonLocalizeEntry>& entries);
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user