| 236 | |
| 237 | template <typename T> |
| 238 | inline void BuildFrom(const T& src_iterable) { |
| 239 | const int dimensions_count = |
| 240 | std::distance(src_iterable.begin(), src_iterable.end()); |
| 241 | Resize(dimensions_count); |
| 242 | int32* data = DimsData(); |
| 243 | for (auto it : src_iterable) { |
| 244 | *data = it; |
| 245 | ++data; |
| 246 | } |
| 247 | } |
| 248 | |
| 249 | // This will probably be factored out. Old code made substantial use of 4-D |
| 250 | // shapes, and so this function is used to extend smaller shapes. Note that |