Lines Matching refs:Vec
303 class Vec final {
307 Vec() noexcept;
308 Vec(std::initializer_list<T>);
309 Vec(const Vec &);
310 Vec(Vec &&) noexcept;
311 ~Vec() noexcept;
313 Vec &operator=(Vec &&) &noexcept;
314 Vec &operator=(const Vec &) &;
350 void swap(Vec &) noexcept;
353 Vec(unsafe_bitcopy_t, const Vec &) noexcept;
360 friend void swap(Vec &lhs, Vec &rhs) noexcept { lhs.swap(rhs); }
475 using vec = Vec<T>;
831 Vec<T>::Vec(std::initializer_list<T> init) : Vec{} {
837 Vec<T>::Vec(const Vec &other) : Vec() {
843 Vec<T>::Vec(Vec &&other) noexcept : repr(other.repr) {
844 new (&other) Vec();
848 Vec<T>::~Vec() noexcept {
853 Vec<T> &Vec<T>::operator=(Vec &&other) &noexcept {
856 new (&other) Vec();
861 Vec<T> &Vec<T>::operator=(const Vec &other) & {
864 new (this) Vec(other);
870 bool Vec<T>::empty() const noexcept {
875 T *Vec<T>::data() noexcept {
876 return const_cast<T *>(const_cast<const Vec<T> *>(this)->data());
880 const T &Vec<T>::operator[](std::size_t n) const noexcept {
887 const T &Vec<T>::at(std::size_t n) const {
895 const T &Vec<T>::front() const noexcept {
901 const T &Vec<T>::back() const noexcept {
907 T &Vec<T>::operator[](std::size_t n) noexcept {
914 T &Vec<T>::at(std::size_t n) {
922 T &Vec<T>::front() noexcept {
928 T &Vec<T>::back() noexcept {
934 void Vec<T>::reserve(std::size_t new_cap) {
939 void Vec<T>::push_back(const T &value) {
944 void Vec<T>::push_back(T &&value) {
950 void Vec<T>::emplace_back(Args &&...args) {
960 void Vec<T>::clear() {
965 typename Vec<T>::iterator Vec<T>::begin() noexcept {
970 typename Vec<T>::iterator Vec<T>::end() noexcept {
975 typename Vec<T>::const_iterator Vec<T>::begin() const noexcept {
980 typename Vec<T>::const_iterator Vec<T>::end() const noexcept {
985 typename Vec<T>::const_iterator Vec<T>::cbegin() const noexcept {
990 typename Vec<T>::const_iterator Vec<T>::cend() const noexcept {
995 void Vec<T>::swap(Vec &rhs) noexcept {
1002 Vec<T>::Vec(unsafe_bitcopy_t, const Vec &bits) noexcept : repr(bits.repr) {}