| 1029 | |
| 1030 | template<typename T> |
| 1031 | void PushClearIfEmpty(std::vector<T>* dest, const size_t dest_len, const std::vector<T>& src, const size_t src_len, const T& deflt) { |
| 1032 | if (!dest->empty() && !src.empty()) { |
| 1033 | PushVector(dest, src); |
| 1034 | } else if (!dest->empty() && src.empty()) { |
| 1035 | for (size_t i = 0; i < src_len; ++i) { |
| 1036 | dest->push_back(deflt); |
| 1037 | } |
| 1038 | } else if (dest->empty() && !src.empty()) { |
| 1039 | for (size_t i = 0; i < dest_len; ++i) { |
| 1040 | dest->push_back(deflt); |
| 1041 | } |
| 1042 | PushVector(dest, src); |
| 1043 | } |
| 1044 | } |
| 1045 | |
| 1046 | void Dataset::addFeaturesFrom(Dataset* other) { |
| 1047 | if (other->num_data_ != num_data_) { |
no test coverage detected