Skip to content

Commit f3dbda7

Browse files
committed
add template MergeVectors() to HelperFunctions
1 parent b1afdf2 commit f3dbda7

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

infra/HelperFunctions.hpp

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,5 +58,20 @@ inline bool StringToBool(const std::string& str) {
5858
throw std::runtime_error("HelperFunctions::StringToBool(): argument must be either true or false");
5959
}
6060

61+
template<typename T>
62+
inline std::vector<T> MergeVectors(const std::vector<T>& vec1, const std::vector<T>& vec2) {
63+
std::vector<T> result;
64+
result.reserve(vec1.size() + vec2.size());
65+
result.insert(result.end(), vec1.begin(), vec1.end());
66+
result.insert(result.end(), vec2.begin(), vec2.end());
67+
68+
return result;
69+
}
70+
71+
template<typename T, typename... Args>
72+
inline std::vector<T> MergeVectors(const std::vector<T>& vec1, const std::vector<T>& vec2, Args... args) {
73+
return MergeVectors(vec1, MergeVectors(vec2, args...));
74+
}
75+
6176
}// namespace HelperFunctions
6277
#endif// ANALYSISTREE_INFRA_HELPER_FUNCTIONS_HPP

0 commit comments

Comments
 (0)