From 67ee51360c1bf72d54544cecb8d8fd638ad4df14 Mon Sep 17 00:00:00 2001 From: John Firebaugh Date: Wed, 27 Apr 2016 15:57:48 -0700 Subject: [core] Add Filter accessors --- include/mbgl/style/filter.hpp | 103 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 103 insertions(+) create mode 100644 include/mbgl/style/filter.hpp (limited to 'include/mbgl/style/filter.hpp') diff --git a/include/mbgl/style/filter.hpp b/include/mbgl/style/filter.hpp new file mode 100644 index 0000000000..6ad6969fbf --- /dev/null +++ b/include/mbgl/style/filter.hpp @@ -0,0 +1,103 @@ +#pragma once + +#include +#include + +#include +#include + +namespace mbgl { + +typedef variant< + class NullFilter, + class EqualsFilter, + class NotEqualsFilter, + class LessThanFilter, + class LessThanEqualsFilter, + class GreaterThanFilter, + class GreaterThanEqualsFilter, + class InFilter, + class NotInFilter, + class AnyFilter, + class AllFilter, + class NoneFilter, + class HasFilter, + class NotHasFilter + > Filter; + +class NullFilter {}; + +class EqualsFilter { +public: + std::string key; + Value value; +}; + +class NotEqualsFilter { +public: + std::string key; + Value value; +}; + +class LessThanFilter { +public: + std::string key; + Value value; +}; + +class LessThanEqualsFilter { +public: + std::string key; + Value value; +}; + +class GreaterThanFilter { +public: + std::string key; + Value value; +}; + +class GreaterThanEqualsFilter { +public: + std::string key; + Value value; +}; + +class InFilter { +public: + std::string key; + std::vector values; +}; + +class NotInFilter { +public: + std::string key; + std::vector values; +}; + +class AnyFilter { +public: + std::vector filters; +}; + +class AllFilter { +public: + std::vector filters; +}; + +class NoneFilter { +public: + std::vector filters; +}; + +class HasFilter { +public: + std::string key; +}; + +class NotHasFilter { +public: + std::string key; +}; + +} // namespace mbgl -- cgit v1.2.1