add RepeatedField stl convert

This commit is contained in:
aozhiwei 2018-09-20 14:01:11 +08:00
parent a61dfc79d9
commit b0ed0e91f5

View File

@ -26,3 +26,39 @@ bool ReadCsvMetaFile(const std::string& filename, std::list<T>& meta_list)
meta_list.emplace_back(t);
});
}
template <typename T1,
typename T2>
static void RepeatedFieldToVector(const T1& t1, T2& t2)
{
for (auto& val : t1) {
t2.push_back(val);
}
}
template <typename T1,
typename T2>
static void RepeatedFieldToSet(const T1& t1, T2& t2)
{
for (auto& val : t1) {
t2.insert(val);
}
}
template <typename T1,
typename T2>
static void VectorToRepeatedField(const T1& t1, T2& t2)
{
for (auto& val : t1) {
*t2.Add() = val;
}
}
template <typename T1,
typename T2>
static void SetToRepeatedField(const T1& t1, T2& t2)
{
for (auto& val : t1) {
*t2.Add() = val;
}
}