summaryrefslogtreecommitdiff
path: root/src/Companion.cpp
diff options
context:
space:
mode:
authorKiritoDv <kiritodev01@gmail.com>2024-05-16 08:03:16 +0000
committerKiritoDv <kiritodev01@gmail.com>2024-05-16 08:03:16 +0000
commit572ea9d09643c7584e40a5b952e7fad8590661f3 (patch)
treebab7930ee6ffb2388934326d3fd037e72a6a73a6 /src/Companion.cpp
parent6a0fcac225978f4f91636276855306048f154d1d (diff)
Reverted gDependencies to use old system
Diffstat (limited to 'src/Companion.cpp')
-rw-r--r--src/Companion.cpp15
1 files changed, 6 insertions, 9 deletions
diff --git a/src/Companion.cpp b/src/Companion.cpp
index 75c077a..364f373 100644
--- a/src/Companion.cpp
+++ b/src/Companion.cpp
@@ -244,14 +244,14 @@ std::optional<ParseResultData> Companion::ParseNode(YAML::Node& node, std::strin
return std::nullopt;
}
- for (auto& [name, node, processed] : this->gDependencies) {
- if(processed) {
+ for (auto [fst, snd] : this->gAssetDependencies[this->gCurrentFile]) {
+ if(snd.second) {
continue;
}
- std::string doutput = (this->gCurrentDirectory / name).string();
+ std::string doutput = (this->gCurrentDirectory / fst).string();
std::replace(doutput.begin(), doutput.end(), '\\', '/');
- processed = true;
- auto dResult = this->ParseNode(node, doutput);
+ this->gAssetDependencies[this->gCurrentFile][fst].second = true;
+ auto dResult = this->ParseNode(snd.first, doutput);
if(dResult.has_value()) {
this->gParseResults[this->gCurrentFile].push_back(dResult.value());
}
@@ -262,7 +262,6 @@ std::optional<ParseResultData> Companion::ParseNode(YAML::Node& node, std::strin
SPDLOG_INFO("Processed {}", name);
- this->gDependencies.clear();
return ParseResultData {
name, type, node, result
@@ -1226,9 +1225,7 @@ std::optional<std::tuple<std::string, YAML::Node>> Companion::RegisterAsset(cons
return std::nullopt;
}
- this->gDependencies.push_back(Dependency {
- name, node, false
- });
+ this->gAssetDependencies[this->gCurrentFile][name] = std::make_pair(node, false);
auto output = (this->gCurrentDirectory / name).string();
std::replace(output.begin(), output.end(), '\\', '/');