v8 10.2.154 (node 18.16.0)
V8 is Google's open source JavaScript engine
Loading...
Searching...
No Matches
gc-info.h File Reference
#include <atomic>
#include <cstdint>
#include <type_traits>
#include "cppgc/internal/finalizer-trait.h"
#include "cppgc/internal/name-trait.h"
#include "cppgc/trace-trait.h"
#include "v8config.h"
Include dependency graph for gc-info.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  EnsureGCInfoIndexTrait
 
struct  GCInfoFolding
 
struct  GCInfoTrait< T >
 

Namespaces

namespace  cppgc
 
namespace  cppgc::internal
 

Macros

#define DISPATCH(is_polymorphic, has_finalizer, has_non_hidden_name, function)
 

Typedefs

using GCInfoIndex = uint16_t
 

Functions

 DISPATCH (true, true, true, EnsureGCInfoIndexPolymorphic(registered_index, TraceTrait< T >::Trace, FinalizerTrait< T >::kCallback, NameTrait< T >::GetName)) DISPATCH(true
 
 EnsureGCInfoIndexPolymorphic (registered_index, TraceTrait< T >::Trace, FinalizerTrait< T >::kCallback)) DISPATCH(true
 
 EnsureGCInfoIndexPolymorphic (registered_index, TraceTrait< T >::Trace, NameTrait< T >::GetName)) DISPATCH(true
 
 EnsureGCInfoIndexPolymorphic (registered_index, TraceTrait< T >::Trace)) DISPATCH(false
 
 EnsureGCInfoIndexNonPolymorphic (registered_index, TraceTrait< T >::Trace, FinalizerTrait< T >::kCallback, NameTrait< T >::GetName)) DISPATCH(false
 
 EnsureGCInfoIndexNonPolymorphic (registered_index, TraceTrait< T >::Trace, FinalizerTrait< T >::kCallback)) DISPATCH(false
 
 EnsureGCInfoIndexNonPolymorphic (registered_index, TraceTrait< T >::Trace, NameTrait< T >::GetName)) DISPATCH(false
 
 EnsureGCInfoIndexNonPolymorphic (registered_index, TraceTrait< T >::Trace)) template< typename T
 

Variables

 true
 
 false
 

Macro Definition Documentation

◆ DISPATCH

#define DISPATCH (   is_polymorphic,
  has_finalizer,
  has_non_hidden_name,
  function 
)
Value:
template <typename T> \
struct EnsureGCInfoIndexTrait::EnsureGCInfoIndexTraitDispatch< \
T, is_polymorphic, has_finalizer, has_non_hidden_name> { \
V8_INLINE GCInfoIndex \
operator()(std::atomic<GCInfoIndex>& registered_index) { \
return function; \
} \
};
#define V8_INLINE
Definition v8config.h:425

Definition at line 63 of file gc-info.h.