diff --git a/include/mapnik/json/geometry_generator_grammar.hpp b/include/mapnik/json/geometry_generator_grammar.hpp index 06aeab9ed..c9f3f72b3 100644 --- a/include/mapnik/json/geometry_generator_grammar.hpp +++ b/include/mapnik/json/geometry_generator_grammar.hpp @@ -177,6 +177,27 @@ struct multi_geometry_type return std::tuple(type, collection); } }; + + +struct not_empty +{ + template + struct result { typedef bool type; }; + + bool operator() (geometry_container const& cont) const + { + geometry_container::const_iterator itr = cont.begin(); + geometry_container::const_iterator end = cont.end(); + + for (; itr!=end; ++itr) + { + if (itr->size() > 0) return true; + } + return false; + } +}; + + #endif