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

#include <template-utils.h>

Collaboration diagram for v8::base::pass_value_or_ref< T, remove_array_extend >:

Public Types

using noref_t = typename std::remove_reference<T>::type
 
using decay_t
 
using type
 

Detailed Description

template<typename T, bool remove_array_extend = true>
struct v8::base::pass_value_or_ref< T, remove_array_extend >

Definition at line 64 of file template-utils.h.

Member Typedef Documentation

◆ decay_t

template<typename T , bool remove_array_extend = true>
using v8::base::pass_value_or_ref< T, remove_array_extend >::decay_t
Initial value:
typename std::conditional<
std::is_array<noref_t>::value && !remove_array_extend, noref_t,
typename std::decay<noref_t>::type>::type
typename std::remove_reference< T >::type noref_t

Definition at line 66 of file template-utils.h.

◆ noref_t

template<typename T , bool remove_array_extend = true>
using v8::base::pass_value_or_ref< T, remove_array_extend >::noref_t = typename std::remove_reference<T>::type

Definition at line 65 of file template-utils.h.

◆ type

template<typename T , bool remove_array_extend = true>
using v8::base::pass_value_or_ref< T, remove_array_extend >::type
Initial value:
typename std::conditional<std::is_scalar<decay_t>::value ||
std::is_array<decay_t>::value,
decay_t, const decay_t&>::type
typename std::conditional< std::is_array< noref_t >::value &&!remove_array_extend, noref_t, typename std::decay< noref_t >::type >::type decay_t

Definition at line 69 of file template-utils.h.


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