v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
v8::base::OwnedVector< T > Class Template Reference

#include <vector.h>

Collaboration diagram for v8::base::OwnedVector< T >:

Public Member Functions

 OwnedVector ()=default
 
 OwnedVector (std::unique_ptr< T[]> data, size_t length)
 
 OwnedVector (const OwnedVector &)=delete
 
OwnedVectoroperator= (const OwnedVector &)=delete
 
template<typename U >
requires std::is_convertible_v<std::unique_ptr<U>, std::unique_ptr<T>>
 OwnedVector (OwnedVector< U > &&other) V8_NOEXCEPT
 
template<typename U >
requires std::is_convertible_v<std::unique_ptr<U>, std::unique_ptr<T>>
OwnedVectoroperator= (OwnedVector< U > &&other) V8_NOEXCEPT
 
constexpr size_t size () const
 
constexpr bool empty () const
 
constexpr Tbegin () const
 
constexpr Tend () const
 
constexpr Tdata () const
 
constexpr std::reverse_iterator< T * > rbegin () const
 
constexpr std::reverse_iterator< T * > rend () const
 
Toperator[] (size_t index) const
 
Vector< Tas_vector () const
 
std::unique_ptr< T[]> ReleaseData ()
 
bool operator== (std::nullptr_t) const
 
bool operator!= (std::nullptr_t) const
 

Static Public Member Functions

static OwnedVector< TNew (size_t size)
 
static OwnedVector< TNewForOverwrite (size_t size)
 
template<typename U >
static OwnedVector< U > NewByCopying (const U *data, size_t size)
 

Private Attributes

std::unique_ptr< T[]> data_
 
size_t length_ = 0
 

Friends

template<typename U >
class OwnedVector
 

Detailed Description

template<typename T>
class v8::base::OwnedVector< T >

Definition at line 209 of file vector.h.

Constructor & Destructor Documentation

◆ OwnedVector() [1/4]

template<typename T >
v8::base::OwnedVector< T >::OwnedVector ( )
default

◆ OwnedVector() [2/4]

template<typename T >
v8::base::OwnedVector< T >::OwnedVector ( std::unique_ptr< T[]> data,
size_t length )
inline

Definition at line 213 of file vector.h.

◆ OwnedVector() [3/4]

template<typename T >
v8::base::OwnedVector< T >::OwnedVector ( const OwnedVector< T > & )
delete

◆ OwnedVector() [4/4]

template<typename T >
template<typename U >
requires std::is_convertible_v<std::unique_ptr<U>, std::unique_ptr<T>>
v8::base::OwnedVector< T >::OwnedVector ( OwnedVector< U > && other)
inline

Definition at line 230 of file vector.h.

Member Function Documentation

◆ as_vector()

template<typename T >
Vector< T > v8::base::OwnedVector< T >::as_vector ( ) const
inline

Definition at line 276 of file vector.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ begin()

template<typename T >
T * v8::base::OwnedVector< T >::begin ( ) const
inlineconstexpr

Definition at line 251 of file vector.h.

Here is the caller graph for this function:

◆ data()

template<typename T >
T * v8::base::OwnedVector< T >::data ( ) const
inlineconstexpr

Definition at line 260 of file vector.h.

Here is the call graph for this function:

◆ empty()

template<typename T >
bool v8::base::OwnedVector< T >::empty ( ) const
inlineconstexpr

Definition at line 249 of file vector.h.

◆ end()

template<typename T >
T * v8::base::OwnedVector< T >::end ( ) const
inlineconstexpr

Definition at line 256 of file vector.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ New()

template<typename T >
static OwnedVector< T > v8::base::OwnedVector< T >::New ( size_t size)
inlinestatic

Definition at line 287 of file vector.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ NewByCopying()

template<typename T >
template<typename U >
static OwnedVector< U > v8::base::OwnedVector< T >::NewByCopying ( const U * data,
size_t size )
inlinestatic

Definition at line 303 of file vector.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ NewForOverwrite()

template<typename T >
static OwnedVector< T > v8::base::OwnedVector< T >::NewForOverwrite ( size_t size)
inlinestatic

Definition at line 294 of file vector.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator!=()

template<typename T >
bool v8::base::OwnedVector< T >::operator!= ( std::nullptr_t ) const
inline

Definition at line 310 of file vector.h.

◆ operator=() [1/2]

template<typename T >
OwnedVector & v8::base::OwnedVector< T >::operator= ( const OwnedVector< T > & )
delete

◆ operator=() [2/2]

template<typename T >
template<typename U >
requires std::is_convertible_v<std::unique_ptr<U>, std::unique_ptr<T>>
OwnedVector & v8::base::OwnedVector< T >::operator= ( OwnedVector< U > && other)
inline

Definition at line 236 of file vector.h.

◆ operator==()

template<typename T >
bool v8::base::OwnedVector< T >::operator== ( std::nullptr_t ) const
inline

Definition at line 309 of file vector.h.

◆ operator[]()

template<typename T >
T & v8::base::OwnedVector< T >::operator[] ( size_t index) const
inline

Definition at line 270 of file vector.h.

◆ rbegin()

template<typename T >
std::reverse_iterator< T * > v8::base::OwnedVector< T >::rbegin ( ) const
inlineconstexpr

Definition at line 262 of file vector.h.

Here is the call graph for this function:

◆ ReleaseData()

template<typename T >
std::unique_ptr< T[]> v8::base::OwnedVector< T >::ReleaseData ( )
inline

Definition at line 280 of file vector.h.

Here is the caller graph for this function:

◆ rend()

template<typename T >
std::reverse_iterator< T * > v8::base::OwnedVector< T >::rend ( ) const
inlineconstexpr

Definition at line 265 of file vector.h.

Here is the call graph for this function:

◆ size()

template<typename T >
size_t v8::base::OwnedVector< T >::size ( ) const
inlineconstexpr

Definition at line 246 of file vector.h.

Here is the caller graph for this function:

Friends And Related Symbol Documentation

◆ OwnedVector

template<typename T >
template<typename U >
friend class OwnedVector
friend

Definition at line 314 of file vector.h.

Member Data Documentation

◆ data_

template<typename T >
std::unique_ptr<T[]> v8::base::OwnedVector< T >::data_
private

Definition at line 316 of file vector.h.

◆ length_

template<typename T >
size_t v8::base::OwnedVector< T >::length_ = 0
private

Definition at line 317 of file vector.h.


The documentation for this class was generated from the following file: