Моя цель - создать объект «валидатор» для карт.Пример того, как я хотел бы использовать его:
MyValidator my_validator = (IsEmpty("key name 1") && DoesExist("key name 2"))
|| HasNElements("key name 3", num)
Позже:
if(my_validator.validate(some_map)) {
// do something
}
В этом случае my_validator.validate(some_map)
вернул бы true, если some_map["key name 1"]
было пусто и some_map["key name 2"]
существует, или если some_map["key name 3"]
имеет 3 элемента.
Буду признателен за любые предложения по реализации.
См. Этот пост для моего предыдущего вопроса относительно реализации, которую я пытался:создать перегруженные операторы для указателей наддува в C ++?