mirror of
https://codeberg.org/comaps/comaps
synced 2026-01-04 03:43:46 +00:00
@@ -184,7 +184,7 @@ UNIT_TEST(ignoreComments)
|
||||
"deprecated:waterway|riverbank:05.2024;52;x\n"
|
||||
"amenity|restaurant;61;\n"
|
||||
"moved:amenity|telephone:05.2024;122;amenity|telephone\n"
|
||||
"natural|lake;564;natural|water|lake\n"; // moved type, should be ignored
|
||||
"natural|lake;564;natural|water|lake\n"; // moved type, should be ignored
|
||||
|
||||
classificator::Load();
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ TypeToOSMTranslator::TypeToOSMTranslator(bool initialize)
|
||||
|
||||
void TypeToOSMTranslator::LoadConfigFile()
|
||||
{
|
||||
Platform &p = GetPlatform();
|
||||
Platform & p = GetPlatform();
|
||||
std::unique_ptr<ModelReader> reader = p.GetReader("mapcss-mapping.csv");
|
||||
ReaderStreamBuf buffer(std::move(reader));
|
||||
std::istream s(&buffer);
|
||||
@@ -36,8 +36,8 @@ void TypeToOSMTranslator::LoadFromStream(std::istream & s)
|
||||
strings::Trim(line);
|
||||
|
||||
// skip empty lines, comments, deprecated and moved types
|
||||
if (line.empty() || line.front() == '#' || line.starts_with("deprecated") ||
|
||||
line.starts_with("moved") || line.back() != ';')
|
||||
if (line.empty() || line.front() == '#' || line.starts_with("deprecated") || line.starts_with("moved") ||
|
||||
line.back() != ';')
|
||||
continue;
|
||||
|
||||
std::vector<std::string_view> tokens = strings::Tokenize(line, ";");
|
||||
@@ -59,12 +59,14 @@ void TypeToOSMTranslator::LoadFromStream(std::istream & s)
|
||||
OSMTag osmTag;
|
||||
|
||||
// e.g. "amenity-restaurant"
|
||||
if (typeTokens.size() >= 2) {
|
||||
if (typeTokens.size() >= 2)
|
||||
{
|
||||
osmTag.key = typeTokens[0];
|
||||
osmTag.value = typeTokens[1];
|
||||
}
|
||||
// e.g. "building"
|
||||
else if (typeTokens.size() == 1) {
|
||||
else if (typeTokens.size() == 1)
|
||||
{
|
||||
osmTag.key = typeTokens[0];
|
||||
osmTag.value = "yes";
|
||||
}
|
||||
@@ -95,7 +97,8 @@ void TypeToOSMTranslator::LoadFromStream(std::istream & s)
|
||||
|
||||
std::string_view keyValuePair = osmTagList.substr(pos + 1, end - pos - 1);
|
||||
|
||||
if (keyValuePair.empty()) {
|
||||
if (keyValuePair.empty())
|
||||
{
|
||||
ASSERT(false, ("Key value pair is empty:", line));
|
||||
break;
|
||||
}
|
||||
@@ -159,4 +162,4 @@ TypeToOSMTranslator const & GetOSMTranslator()
|
||||
static TypeToOSMTranslator translator;
|
||||
return translator;
|
||||
}
|
||||
} // namespace osm
|
||||
} // namespace editor
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
#pragma once
|
||||
|
||||
#include <cstdint>
|
||||
#include <vector>
|
||||
#include <unordered_map>
|
||||
#include <vector>
|
||||
|
||||
namespace editor
|
||||
{
|
||||
@@ -31,4 +31,4 @@ private:
|
||||
|
||||
TypeToOSMTranslator const & GetOSMTranslator();
|
||||
|
||||
} // namespace osm
|
||||
} // namespace editor
|
||||
|
||||
Reference in New Issue
Block a user