| 292 | |
| 293 | template <typename T, size_t N, typename A> |
| 294 | auto |
| 295 | Vectray<T, N, A>::push_back(const T &t) -> self_type & { |
| 296 | std::visit(swoc::meta::vary{[&](FixedStore &fs) -> void { |
| 297 | if (fs._count < N) { |
| 298 | new (reinterpret_cast<T *>(fs._raw.data()) + fs._count++) T(t); // A::traits ? |
| 299 | } else { |
| 300 | this->transfer(); |
| 301 | std::get<DYNAMIC>(_store).push_back(t); |
| 302 | } |
| 303 | }, |
| 304 | [&](DynamicStore &ds) -> void { ds.push_back(t); }}, |
| 305 | _store); |
| 306 | return *this; |
| 307 | } |
| 308 | |
| 309 | template <typename T, size_t N, typename A> |
| 310 | auto |
no test coverage detected