1#ifndef OSMIUM_TAGS_MATCHER_HPP
2#define OSMIUM_TAGS_MATCHER_HPP
75 template <
typename TKey,
typename X =
typename std::enable_if<
76 std::is_convertible<TKey, osmium::StringMatcher>::value,
void>
::type>
90 template <
typename TKey,
typename TValue,
91 typename std::enable_if<std::is_convertible<TKey, osmium::StringMatcher>::value,
int>
::type = 0,
92 typename std::enable_if<std::is_convertible<TValue, osmium::StringMatcher>::value,
int>
::type = 0>
93 TagMatcher(TKey&& key_matcher, TValue&& value_matcher,
bool invert =
false) :
105 bool operator()(
const char* key,
const char* value)
const noexcept {
125 return std::any_of(tags.begin(), tags.end(), [
this](
const osmium::Tag& tag){
126 return operator()(tag);
Definition: string_matcher.hpp:86
Definition: matcher.hpp:48
bool m_has_value_matcher
Definition: matcher.hpp:52
bool has_value_matcher() const noexcept
Definition: matcher.hpp:65
TagMatcher()
Definition: matcher.hpp:60
osmium::StringMatcher m_key_matcher
Definition: matcher.hpp:50
TagMatcher(TKey &&key_matcher)
Definition: matcher.hpp:77
bool m_result
Definition: matcher.hpp:53
TagMatcher(TKey &&key_matcher, TValue &&value_matcher, bool invert=false)
Definition: matcher.hpp:93
bool operator()(const char *key, const char *value) const noexcept
Definition: matcher.hpp:105
bool operator()(const osmium::TagList &tags) const noexcept
Definition: matcher.hpp:124
osmium::StringMatcher m_value_matcher
Definition: matcher.hpp:51
bool operator()(const osmium::Tag &tag) const noexcept
Definition: matcher.hpp:115
type
Definition: entity_bits.hpp:63
Namespace for everything in the Osmium library.
Definition: assembler.hpp:53
Definition: location.hpp:555