summaryrefslogtreecommitdiff
path: root/src/mbgl/style/parser.cpp
diff options
context:
space:
mode:
authorJohn Firebaugh <john.firebaugh@gmail.com>2017-03-07 17:00:53 -0800
committerJohn Firebaugh <john.firebaugh@gmail.com>2017-03-23 13:31:13 -0700
commitd7227e13a7a87cf50a4c8c1f0615fc565f5a2679 (patch)
treeeda76a2da3220f3cfeec901400369cf9c8361f58 /src/mbgl/style/parser.cpp
parent1c757cce34344dfecc9a724034680225143f92b7 (diff)
downloadqtlocation-mapboxgl-d7227e13a7a87cf50a4c8c1f0615fc565f5a2679.tar.gz
[all] Replace Result<T> with optional<T> plus out Error parameter
Diffstat (limited to 'src/mbgl/style/parser.cpp')
-rw-r--r--src/mbgl/style/parser.cpp22
1 files changed, 12 insertions, 10 deletions
diff --git a/src/mbgl/style/parser.cpp b/src/mbgl/style/parser.cpp
index 926c243733..d970d8bbc0 100644
--- a/src/mbgl/style/parser.cpp
+++ b/src/mbgl/style/parser.cpp
@@ -116,10 +116,11 @@ void Parser::parseSources(const JSValue& value) {
for (const auto& property : value.GetObject()) {
std::string id = *conversion::toString(property.name);
- conversion::Result<std::unique_ptr<Source>> source =
- conversion::convert<std::unique_ptr<Source>>(property.value, id);
+ conversion::Error error;
+ optional<std::unique_ptr<Source>> source =
+ conversion::convert<std::unique_ptr<Source>>(property.value, error, id);
if (!source) {
- Log::Warning(Event::ParseStyle, source.error().message);
+ Log::Warning(Event::ParseStyle, error.message);
continue;
}
@@ -222,9 +223,10 @@ void Parser::parseLayer(const std::string& id, const JSValue& value, std::unique
layer = reference->baseImpl->cloneRef(id);
conversion::setPaintProperties(*layer, value);
} else {
- conversion::Result<std::unique_ptr<Layer>> converted = conversion::convert<std::unique_ptr<Layer>>(value);
+ conversion::Error error;
+ optional<std::unique_ptr<Layer>> converted = conversion::convert<std::unique_ptr<Layer>>(value, error);
if (!converted) {
- Log::Warning(Event::ParseStyle, converted.error().message);
+ Log::Warning(Event::ParseStyle, error.message);
return;
}
layer = std::move(*converted);
@@ -232,20 +234,20 @@ void Parser::parseLayer(const std::string& id, const JSValue& value, std::unique
}
std::vector<FontStack> Parser::fontStacks() const {
- std::set<FontStack> result;
+ std::set<FontStack> optional;
for (const auto& layer : layers) {
if (layer->is<SymbolLayer>()) {
PropertyValue<FontStack> textFont = layer->as<SymbolLayer>()->getTextFont();
if (textFont.isUndefined()) {
- result.insert({"Open Sans Regular", "Arial Unicode MS Regular"});
+ optional.insert({"Open Sans Regular", "Arial Unicode MS Regular"});
} else if (textFont.isConstant()) {
- result.insert(textFont.asConstant());
+ optional.insert(textFont.asConstant());
} else if (textFont.isCameraFunction()) {
textFont.asCameraFunction().stops.match(
[&] (const auto& stops) {
for (const auto& stop : stops.stops) {
- result.insert(stop.second);
+ optional.insert(stop.second);
}
}
);
@@ -253,7 +255,7 @@ std::vector<FontStack> Parser::fontStacks() const {
}
}
- return std::vector<FontStack>(result.begin(), result.end());
+ return std::vector<FontStack>(optional.begin(), optional.end());
}
} // namespace style