| 64 | |
| 65 | template <typename T, typename F> |
| 66 | void ForEachPoint(T && t, F && f) |
| 67 | { |
| 68 | using Type = RemoveCvrefT<T>; |
| 69 | if constexpr (std::is_same_v<Type, FeatureBuilder>) |
| 70 | t.ForEachPoint(std::forward<F>(f)); |
| 71 | else if constexpr (std::is_same_v<Type, m2::PointD>) |
| 72 | f(std::forward<T>(t)); |
| 73 | else |
| 74 | UNREACHABLE(); |
| 75 | } |
| 76 | |
| 77 | // An implementation for CountriesFilesAffiliation class. |
| 78 | template <typename T> |
no test coverage detected