| 465 | // Detect if type has capacity() |
| 466 | template<typename T> |
| 467 | class has_capacity { |
| 468 | template<typename C> static auto test(int) -> decltype( |
| 469 | fl::declval<C>().capacity(), |
| 470 | fl::true_type() |
| 471 | ); |
| 472 | template<typename> static fl::false_type test(...); |
| 473 | public: |
| 474 | static constexpr bool value = fl::is_same<decltype(test<T>(0)), fl::true_type>::value; |
| 475 | }; |
| 476 | |
| 477 | // Detect if type has max_size() |
| 478 | template<typename T> |