снова привет!
хочу добавить в YAS лимиты.
очевидное применение — ограничения на размеры десериализуемых контейнеров/строк.
пример:
struct type {
std::string str;
template<typename Ar>
void serialize(Ar &ar) {
ar & yas::limit(str, 32); // при десериализации длина строки ограничена 32ум символам
}
};
// ...
type t;
yas::binary_oarchive oa;
oa & t;
при десериализации, если сериализатор видит что пришла строка длинее 32 — бросает исключение.
вопроса у меня два:
1. нужно ли использовать лимиты и для сериализации?(для записи в архив) вроде как это забота юзера.
2. нужно ли использовать лимиты и для фундаментальных типов?
спасибо.
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)