POD_VECTOR(3)
π pod_vector< T > β Library Functions Manual, section 3 π
okay bestie, welcome to the pod_vector< T > page, straight out of the IsoSpec docs π it's a class, it's a template, it's lowkey iconic, and I'm gonna walk you through literally every single line. no skips. no "you get the gist". periodt.
πΈ NAME πΈ
pod_vector< T >
that's it. that's the name. short, sweet, main character energy. π
π«Ά SYNOPSIS π«Ά
here's the whole vibe at a glance, bestie β every type, every function, every noexcept, no cap:
π Public Types
typedef T * iterator
typedef const T * const_iterator
typedef T value_type
typedef size_t size_type
typedef T & reference
typedef const T & const_reference
π Public Member Functions
pod_vector (size_t initial_size=16)
pod_vector (const pod_vector< T > &other)=delete
pod_vector & operator= (const pod_vector< T > &other)=delete
pod_vector & operator= (pod_vector< T > &&other)
pod_vector (pod_vector< T > &&other)
pod_vector (unsafe_pod_vector< T > &&other)
void fast_reserve (size_t n)
void reserve (size_t n)
void resize (size_t new_size)
void resize_and_wipe (size_t new_size)
ISOSPEC_FORCE_INLINE void nocheck_push_back (const T &val) noexcept
ISOSPEC_FORCE_INLINE void push_back (const T &val)
ISOSPEC_FORCE_INLINE T & operator[] (size_t n) noexcept
ISOSPEC_FORCE_INLINE const T & operator[] (size_t n) const noexcept
ISOSPEC_FORCE_INLINE size_t size () const noexcept
ISOSPEC_FORCE_INLINE size_t capacity () const noexcept
ISOSPEC_FORCE_INLINE T * data () noexcept
ISOSPEC_FORCE_INLINE const T * data () const noexcept
ISOSPEC_FORCE_INLINE bool empty () const noexcept
ISOSPEC_FORCE_INLINE const T & back () const noexcept
ISOSPEC_FORCE_INLINE void pop_back () noexcept
void swap (pod_vector< T > &other) noexcept
iterator begin () noexcept
const_iterator begin () const noexcept
const_iterator cbegin () const noexcept
iterator end () noexcept
const_iterator end () const noexcept
const_iterator cend () const noexcept
ISOSPEC_FORCE_INLINE const T & front () const noexcept
void clear ()
π¦ Friends
class unsafe_pod_vector< T >
yes bestie, there's a whole other class listed as a friend, and its name literally starts with unsafe_. the docs are just handing us that one, we don't have to dig. π
π Detailed Description π
the actual class declaration, verbatim, vibes and all:
template<typename T>
class pod_vector< T >"
Definition at line 32 of file pod_vector.h.
π Member Typedef Documentation π
these are the little name-aliases the class hands out. all six, in the exact order the docs list them, with their line numbers because we do not gatekeep:
template<typename T> typedef const T* pod_vector< T >::const_iteratorβ Definition at line 195 of filepod_vector.h.template<typename T> typedef const T& pod_vector< T >::const_referenceβ Definition at line 199 of filepod_vector.h.template<typename T> typedef T* pod_vector< T >::iteratorβ Definition at line 194 of filepod_vector.h.template<typename T> typedef T& pod_vector< T >::referenceβ Definition at line 198 of filepod_vector.h.template<typename T> typedef size_t pod_vector< T >::size_typeβ Definition at line 197 of filepod_vector.h.template<typename T> typedef T pod_vector< T >::value_typeβ Definition at line 196 of filepod_vector.h.
π Constructor & Destructor Documentation π
birth, death, and moving out β the whole lifecycle arc:
template<typename T> pod_vector< T >::pod_vector (size_t initial_size = 16)β[inline],[explicit]. Definition at line 39 of filepod_vector.h.template<typename T> pod_vector< T >::pod_vector (pod_vector< T > && other)β[inline]. Definition at line 64 of filepod_vector.h.template<typename T> pod_vector< T >::~pod_vector ()β[inline]. Definition at line 72 of filepod_vector.h.template<typename T> pod_vector< T >::pod_vector (unsafe_pod_vector< T > && other)β[inline],[explicit]. Definition at line 74 of filepod_vector.h.
and yeah, the copy constructor and copy assignment are =deleted up in the SYNOPSIS β the docs said what they said, no copying, bestie. moving is fine though, she moves. β¨
β Member Function Documentation β
every single one, alphabetical, exactly like the docs lay it out. line numbers stay, attributes stay, nothing gets merged:
template<typename T> ISOSPEC_FORCE_INLINE const T & pod_vector< T >::back () constβ[inline],[noexcept]. Definition at line 174 of filepod_vector.h.template<typename T> const_iterator pod_vector< T >::begin () constβ[inline],[noexcept]. Definition at line 202 of filepod_vector.h.template<typename T> iterator pod_vector< T >::begin ()β[inline],[noexcept]. Definition at line 201 of filepod_vector.h.template<typename T> ISOSPEC_FORCE_INLINE size_t pod_vector< T >::capacity () constβ[inline],[noexcept]. Definition at line 154 of filepod_vector.h.template<typename T> const_iterator pod_vector< T >::cbegin () constβ[inline],[noexcept]. Definition at line 203 of filepod_vector.h.template<typename T> const_iterator pod_vector< T >::cend () constβ[inline],[noexcept]. Definition at line 206 of filepod_vector.h.template<typename T> void pod_vector< T >::clear ()β[inline]. Definition at line 214 of filepod_vector.h.template<typename T> ISOSPEC_FORCE_INLINE const T * pod_vector< T >::data () constβ[inline],[noexcept]. Definition at line 164 of filepod_vector.h.template<typename T> ISOSPEC_FORCE_INLINE T * pod_vector< T >::data ()β[inline],[noexcept]. Definition at line 159 of filepod_vector.h.template<typename T> ISOSPEC_FORCE_INLINE bool pod_vector< T >::empty () constβ[inline],[noexcept]. Definition at line 169 of filepod_vector.h.template<typename T> const_iterator pod_vector< T >::end () constβ[inline],[noexcept]. Definition at line 205 of filepod_vector.h.template<typename T> iterator pod_vector< T >::end ()β[inline],[noexcept]. Definition at line 204 of filepod_vector.h.template<typename T> void pod_vector< T >::fast_reserve (size_t n)β[inline]. Definition at line 82 of filepod_vector.h.template<typename T> ISOSPEC_FORCE_INLINE const T & pod_vector< T >::front () constβ[inline],[noexcept]. Definition at line 208 of filepod_vector.h.template<typename T> ISOSPEC_FORCE_INLINE void pod_vector< T >::nocheck_push_back (const T & val)β[inline],[noexcept]. Definition at line 122 of filepod_vector.h.template<typename T> pod_vector & pod_vector< T >::operator= (pod_vector< T > && other)β[inline]. Definition at line 54 of filepod_vector.h.template<typename T> ISOSPEC_FORCE_INLINE const T & pod_vector< T >::operator[] (size_t n) constβ[inline],[noexcept]. Definition at line 143 of filepod_vector.h.template<typename T> ISOSPEC_FORCE_INLINE T & pod_vector< T >::operator[] (size_t n)β[inline],[noexcept]. Definition at line 137 of filepod_vector.h.template<typename T> ISOSPEC_FORCE_INLINE void pod_vector< T >::pop_back ()β[inline],[noexcept]. Definition at line 180 of filepod_vector.h.template<typename T> ISOSPEC_FORCE_INLINE void pod_vector< T >::push_back (const T & val)β[inline]. Definition at line 129 of filepod_vector.h.template<typename T> void pod_vector< T >::reserve (size_t n)β[inline]. Definition at line 94 of filepod_vector.h.template<typename T> void pod_vector< T >::resize (size_t new_size)β[inline]. Definition at line 100 of filepod_vector.h.template<typename T> void pod_vector< T >::resize_and_wipe (size_t new_size)β[inline]. Definition at line 114 of filepod_vector.h.template<typename T> ISOSPEC_FORCE_INLINE size_t pod_vector< T >::size () constβ[inline],[noexcept]. Definition at line 149 of filepod_vector.h.template<typename T> void pod_vector< T >::swap (pod_vector< T > & other)β[inline],[noexcept]. Definition at line 187 of filepod_vector.h.
ok real talk: the docs give us signatures, attributes and line numbers and that is it β I'm not gonna sit here and make up what any of these do, because the rule is the facts don't change, only the vibe. π«Ά
π Friends And Related Symbol Documentation π
template<typename T> friend class unsafe_pod_vector< T >β[friend]. Definition at line 214 of filepod_vector.h.
she got access. she's in the group chat. and yes, clear () is also defined at line 214 β they're line twins, and that's just what the docs say. π
π Author π
Generated automatically by Doxygen for IsoSpec from the source code.
and that's the whole page, bestie β IsoSpec said it, Doxygen wrote it down, and I just gave it the glow-up it deserved. shoutout to the <pink>IsoSpec</pink> source and the pod_vector< T >(3) manual page itself β go off, you absolute legend. π¦β¨ππ
π¦ where this page comes from
- ubuntu resolute: libisospec++-dev 2.3.2-1build1 Β· BSD-2-Clause
- ubuntu stonking: libisospec++-dev 2.3.2-2 Β· BSD-2-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms