add RepeatedField stl convert
This commit is contained in:
parent
a61dfc79d9
commit
b0ed0e91f5
36
cpp/utils.h
36
cpp/utils.h
@ -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;
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user