v8  10.1.124 (node 18.2.0)
V8 is Google's open source JavaScript engine
cppgc::internal Namespace Reference

Namespaces

 api_constants
 

Data Structures

class  MakeGarbageCollectedTraitInternal
 
class  CrossThreadPersistentBase
 
class  BasicCrossThreadPersistent
 
struct  IsWeak< BasicCrossThreadPersistent< T, internal::WeakCrossThreadPersistentPolicy, LocationPolicy, CheckingPolicy > >
 
struct  IsAllocatedOnCompactableSpaceImpl
 
struct  IsAllocatedOnCompactableSpaceImpl< void >
 
struct  IsAllocatedOnCompactableSpace
 
class  ExplicitManagementImpl
 
class  AtomicEntryFlag
 
struct  CagedHeapLocalData
 
struct  HasFinalizeGarbageCollectedObject
 
struct  HasFinalizeGarbageCollectedObject< T, void_t< decltype(std::declval< T >().FinalizeGarbageCollectedObject())> >
 
struct  FinalizerTraitImpl
 
struct  FinalizerTraitImpl< T, true >
 
struct  FinalizerTraitImpl< T, false >
 
struct  FinalizerTrait
 
struct  EnsureGCInfoIndexTrait
 
struct  GCInfoFolding
 
struct  GCInfoTrait
 
struct  EatParams
 
struct  HeapObjectName
 
class  NameTraitBase
 
class  NameTrait
 
class  PersistentNode
 
class  PersistentRegionBase
 
class  PersistentRegion
 
class  PersistentRegionLock
 
class  CrossThreadPersistentRegion
 
struct  DijkstraWriteBarrierPolicy
 
struct  NoWriteBarrierPolicy
 
class  SameThreadEnabledCheckingPolicyBase
 
class  SameThreadEnabledCheckingPolicy
 
class  DisabledCheckingPolicy
 
class  KeepLocationPolicy
 
class  IgnoreLocationPolicy
 
struct  StrongPersistentPolicy
 
struct  WeakPersistentPolicy
 
struct  StrongCrossThreadPersistentPolicy
 
struct  WeakCrossThreadPersistentPolicy
 
class  BasicPersistent
 
class  BasicMember
 
class  WriteBarrier
 
class  WriteBarrierTypeForNonCagedHeapPolicy
 
class  MemberBase
 
struct  IsWeak< internal::BasicMember< T, WeakMemberTag, WriteBarrierPolicy, CheckingPolicy > >
 
struct  BaseObjectSizeTrait
 
class  PersistentBase
 
struct  IsWeak< BasicPersistent< T, internal::WeakPersistentPolicy, LocationPolicy, CheckingPolicy > >
 
class  PrefinalizerRegistration
 
struct  SentinelPointer
 
struct  TraceTraitImpl
 
struct  TraceTraitFromInnerAddressImpl
 
struct  TraceTraitBase
 
struct  TraceTraitImpl< T, false >
 
struct  TraceTraitImpl< T, true >
 
struct  make_void
 
struct  IsWeak
 
struct  IsTraceMethodConst
 
struct  IsTraceMethodConst< T, void_t< decltype(std::declval< const T >().Trace(std::declval< Visitor * >()))> >
 
struct  IsTraceable
 
struct  IsTraceable< T, void_t< decltype(std::declval< T >().Trace(std::declval< Visitor * >()))> >
 
struct  HasGarbageCollectedMixinTypeMarker
 
struct  HasGarbageCollectedMixinTypeMarker< T, void_t< typename std::remove_const_t< T >::IsGarbageCollectedMixinTypeMarker > >
 
struct  HasGarbageCollectedTypeMarker
 
struct  HasGarbageCollectedTypeMarker< T, void_t< typename std::remove_const_t< T >::IsGarbageCollectedTypeMarker > >
 
struct  IsGarbageCollectedMixinType
 
struct  IsGarbageCollectedMixinType< T, false, true >
 
struct  IsGarbageCollectedType
 
struct  IsGarbageCollectedType< T, true >
 
struct  IsGarbageCollectedOrMixinType
 
struct  IsGarbageCollectedWithMixinType
 
struct  IsGarbageCollectedWithMixinType< T, true >
 
struct  IsSubclassOfBasicMemberTemplate
 
struct  IsMemberType
 
struct  IsMemberType< T, true >
 
struct  IsWeakMemberType
 
struct  IsWeakMemberType< T, true >
 
struct  IsUntracedMemberType
 
struct  IsUntracedMemberType< T, true >
 
struct  IsComplete
 

Typedefs

using FinalizationCallback = void(*)(void *)
 
using GCInfoIndex = uint16_t
 
using NameCallback = HeapObjectName(*)(const void *)
 
using DefaultMemberCheckingPolicy = DisabledCheckingPolicy
 
using DefaultPersistentCheckingPolicy = DisabledCheckingPolicy
 
using DefaultCrossThreadPersistentCheckingPolicy = DisabledCheckingPolicy
 
using DefaultLocationPolicy = IgnoreLocationPolicy
 
template<typename... Ts>
using void_t = typename make_void< Ts... >::type
 

Enumerations

enum class  AlignVal : size_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
 
void V8_EXPORT DCheckImpl (const char *, const SourceLocation &=SourceLocation::Current())
 
void V8_EXPORT FatalImpl (const char *, const SourceLocation &=SourceLocation::Current())
 
template<WriteBarrier::Type type>
V8_INLINE WriteBarrier::Type SetAndReturnType (WriteBarrier::Params &params)
 
template<typename T1 , typename WeaknessTag1 , typename WriteBarrierPolicy1 , typename CheckingPolicy1 , typename T2 , typename WeaknessTag2 , typename WriteBarrierPolicy2 , typename CheckingPolicy2 >
bool operator== (const BasicMember< T1, WeaknessTag1, WriteBarrierPolicy1, CheckingPolicy1 > &member1, const BasicMember< T2, WeaknessTag2, WriteBarrierPolicy2, CheckingPolicy2 > &member2)
 
template<typename T1 , typename WeaknessTag1 , typename WriteBarrierPolicy1 , typename CheckingPolicy1 , typename T2 , typename WeaknessTag2 , typename WriteBarrierPolicy2 , typename CheckingPolicy2 >
bool operator!= (const BasicMember< T1, WeaknessTag1, WriteBarrierPolicy1, CheckingPolicy1 > &member1, const BasicMember< T2, WeaknessTag2, WriteBarrierPolicy2, CheckingPolicy2 > &member2)
 
template<typename T1 , typename WeaknessPolicy1 , typename LocationPolicy1 , typename CheckingPolicy1 , typename T2 , typename WeaknessPolicy2 , typename LocationPolicy2 , typename CheckingPolicy2 >
bool operator== (const BasicPersistent< T1, WeaknessPolicy1, LocationPolicy1, CheckingPolicy1 > &p1, const BasicPersistent< T2, WeaknessPolicy2, LocationPolicy2, CheckingPolicy2 > &p2)
 
template<typename T1 , typename WeaknessPolicy1 , typename LocationPolicy1 , typename CheckingPolicy1 , typename T2 , typename WeaknessPolicy2 , typename LocationPolicy2 , typename CheckingPolicy2 >
bool operator!= (const BasicPersistent< T1, WeaknessPolicy1, LocationPolicy1, CheckingPolicy1 > &p1, const BasicPersistent< T2, WeaknessPolicy2, LocationPolicy2, CheckingPolicy2 > &p2)
 
template<typename T1 , typename PersistentWeaknessPolicy , typename PersistentLocationPolicy , typename PersistentCheckingPolicy , typename T2 , typename MemberWriteBarrierPolicy , typename MemberWeaknessTag , typename MemberCheckingPolicy >
bool operator== (const BasicPersistent< T1, PersistentWeaknessPolicy, PersistentLocationPolicy, PersistentCheckingPolicy > &p, const BasicMember< T2, MemberWeaknessTag, MemberWriteBarrierPolicy, MemberCheckingPolicy > &m)
 
template<typename T1 , typename PersistentWeaknessPolicy , typename PersistentLocationPolicy , typename PersistentCheckingPolicy , typename T2 , typename MemberWriteBarrierPolicy , typename MemberWeaknessTag , typename MemberCheckingPolicy >
bool operator!= (const BasicPersistent< T1, PersistentWeaknessPolicy, PersistentLocationPolicy, PersistentCheckingPolicy > &p, const BasicMember< T2, MemberWeaknessTag, MemberWriteBarrierPolicy, MemberCheckingPolicy > &m)
 
template<typename T1 , typename MemberWriteBarrierPolicy , typename MemberWeaknessTag , typename MemberCheckingPolicy , typename T2 , typename PersistentWeaknessPolicy , typename PersistentLocationPolicy , typename PersistentCheckingPolicy >
bool operator== (const BasicMember< T2, MemberWeaknessTag, MemberWriteBarrierPolicy, MemberCheckingPolicy > &m, const BasicPersistent< T1, PersistentWeaknessPolicy, PersistentLocationPolicy, PersistentCheckingPolicy > &p)
 
template<typename T1 , typename MemberWriteBarrierPolicy , typename MemberWeaknessTag , typename MemberCheckingPolicy , typename T2 , typename PersistentWeaknessPolicy , typename PersistentLocationPolicy , typename PersistentCheckingPolicy >
bool operator!= (const BasicMember< T2, MemberWeaknessTag, MemberWriteBarrierPolicy, MemberCheckingPolicy > &m, const BasicPersistent< T1, PersistentWeaknessPolicy, PersistentLocationPolicy, PersistentCheckingPolicy > &p)
 
V8_EXPORT void Fatal (const std::string &reason=std::string(), const SourceLocation &=SourceLocation::Current())
 

Variables

 true
 
 false
 
template<typename T >
constexpr bool IsTraceableV = IsTraceable<T>::value
 

Detailed Description

Implementation details of cppgc. Those details are considered internal and may change at any point in time without notice. Users should never rely on the contents of this namespace.

Typedef Documentation

◆ DefaultCrossThreadPersistentCheckingPolicy

◆ DefaultLocationPolicy

◆ DefaultMemberCheckingPolicy

◆ DefaultPersistentCheckingPolicy

◆ FinalizationCallback

using FinalizationCallback = void (*)(void*)

Definition at line 15 of file finalizer-trait.h.

◆ GCInfoIndex

using GCInfoIndex = uint16_t

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

◆ NameCallback

using NameCallback = HeapObjectName (*)(const void*)

Definition at line 115 of file name-trait.h.

◆ void_t

using void_t = typename make_void<Ts...>::type

Definition at line 33 of file type-traits.h.

Enumeration Type Documentation

◆ AlignVal

enum AlignVal : size_t
strong

Definition at line 48 of file allocation.h.

Function Documentation

◆ DCheckImpl()

void V8_EXPORT cppgc::internal::DCheckImpl ( const char *  ,
const SourceLocation = SourceLocation::Current() 
)

◆ DISPATCH()

cppgc::internal::DISPATCH ( true  ,
true  ,
true  ,
EnsureGCInfoIndexPolymorphic(registered_index, TraceTrait< T >::Trace, FinalizerTrait< T >::kCallback, NameTrait< T >::GetName)   
)

◆ EnsureGCInfoIndexNonPolymorphic() [1/4]

cppgc::internal::EnsureGCInfoIndexNonPolymorphic ( registered_index  ,
TraceTrait< T >::Trace   
)

◆ EnsureGCInfoIndexNonPolymorphic() [2/4]

cppgc::internal::EnsureGCInfoIndexNonPolymorphic ( registered_index  ,
TraceTrait< T >::Trace  ,
FinalizerTrait< T >::kCallback   
)

◆ EnsureGCInfoIndexNonPolymorphic() [3/4]

cppgc::internal::EnsureGCInfoIndexNonPolymorphic ( registered_index  ,
TraceTrait< T >::Trace  ,
FinalizerTrait< T >::kCallback  ,
NameTrait< T >::GetName   
)

◆ EnsureGCInfoIndexNonPolymorphic() [4/4]

cppgc::internal::EnsureGCInfoIndexNonPolymorphic ( registered_index  ,
TraceTrait< T >::Trace  ,
NameTrait< T >::GetName   
)

◆ EnsureGCInfoIndexPolymorphic() [1/3]

cppgc::internal::EnsureGCInfoIndexPolymorphic ( registered_index  ,
TraceTrait< T >::Trace   
)

◆ EnsureGCInfoIndexPolymorphic() [2/3]

cppgc::internal::EnsureGCInfoIndexPolymorphic ( registered_index  ,
TraceTrait< T >::Trace  ,
FinalizerTrait< T >::kCallback   
)

◆ EnsureGCInfoIndexPolymorphic() [3/3]

cppgc::internal::EnsureGCInfoIndexPolymorphic ( registered_index  ,
TraceTrait< T >::Trace  ,
NameTrait< T >::GetName   
)

◆ Fatal()

V8_EXPORT void cppgc::internal::Fatal ( const std::string &  reason = std::string(),
const SourceLocation = SourceLocation::Current() 
)

◆ FatalImpl()

void V8_EXPORT cppgc::internal::FatalImpl ( const char *  ,
const SourceLocation = SourceLocation::Current() 
)

◆ operator!=() [1/4]

bool cppgc::internal::operator!= ( const BasicMember< T1, WeaknessTag1, WriteBarrierPolicy1, CheckingPolicy1 > &  member1,
const BasicMember< T2, WeaknessTag2, WriteBarrierPolicy2, CheckingPolicy2 > &  member2 
)

Definition at line 244 of file member.h.

◆ operator!=() [2/4]

bool cppgc::internal::operator!= ( const BasicMember< T2, MemberWeaknessTag, MemberWriteBarrierPolicy, MemberCheckingPolicy > &  m,
const BasicPersistent< T1, PersistentWeaknessPolicy, PersistentLocationPolicy, PersistentCheckingPolicy > &  p 
)

Definition at line 333 of file persistent.h.

◆ operator!=() [3/4]

bool cppgc::internal::operator!= ( const BasicPersistent< T1, PersistentWeaknessPolicy, PersistentLocationPolicy, PersistentCheckingPolicy > &  p,
const BasicMember< T2, MemberWeaknessTag, MemberWriteBarrierPolicy, MemberCheckingPolicy > &  m 
)

Definition at line 307 of file persistent.h.

◆ operator!=() [4/4]

bool cppgc::internal::operator!= ( const BasicPersistent< T1, WeaknessPolicy1, LocationPolicy1, CheckingPolicy1 > &  p1,
const BasicPersistent< T2, WeaknessPolicy2, LocationPolicy2, CheckingPolicy2 > &  p2 
)

Definition at line 283 of file persistent.h.

◆ operator==() [1/4]

bool cppgc::internal::operator== ( const BasicMember< T1, WeaknessTag1, WriteBarrierPolicy1, CheckingPolicy1 > &  member1,
const BasicMember< T2, WeaknessTag2, WriteBarrierPolicy2, CheckingPolicy2 > &  member2 
)

Definition at line 234 of file member.h.

◆ operator==() [2/4]

bool cppgc::internal::operator== ( const BasicMember< T2, MemberWeaknessTag, MemberWriteBarrierPolicy, MemberCheckingPolicy > &  m,
const BasicPersistent< T1, PersistentWeaknessPolicy, PersistentLocationPolicy, PersistentCheckingPolicy > &  p 
)

Definition at line 320 of file persistent.h.

◆ operator==() [3/4]

bool cppgc::internal::operator== ( const BasicPersistent< T1, PersistentWeaknessPolicy, PersistentLocationPolicy, PersistentCheckingPolicy > &  p,
const BasicMember< T2, MemberWeaknessTag, MemberWriteBarrierPolicy, MemberCheckingPolicy > &  m 
)

Definition at line 294 of file persistent.h.

◆ operator==() [4/4]

bool cppgc::internal::operator== ( const BasicPersistent< T1, WeaknessPolicy1, LocationPolicy1, CheckingPolicy1 > &  p1,
const BasicPersistent< T2, WeaknessPolicy2, LocationPolicy2, CheckingPolicy2 > &  p2 
)

Definition at line 273 of file persistent.h.

◆ SetAndReturnType()

Variable Documentation

◆ false

false

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

◆ IsTraceableV

constexpr bool IsTraceableV = IsTraceable<T>::value
constexpr

Definition at line 66 of file type-traits.h.

◆ true

true

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