StrongType: introduce a facility to convert a container of a POD types into a container of StrongTypes
When read from the input data file, some values are interpreted as std::size_t
but should be in the rest of the library be replaced by the adequate strong type. We could of course do so manually each time, but a one liner is preferable that something like:
std::vector<DomainNS::unique_id> domain_unique_id_list(raw_domain_unique_id_list.size());
std::transform(raw_domain_unique_id_list.cbegin(),
raw_domain_unique_id_list.cend(),
domain_unique_id_list.begin(),
[](const std::size_t index)
{
return DomainNS::unique_id { index };
});
each time we need to do it.