v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
handles.h File Reference
#include <type_traits>
#include <vector>
#include "src/base/hashing.h"
#include "src/base/macros.h"
#include "src/base/small-vector.h"
#include "src/common/checks.h"
#include "src/common/globals.h"
#include "src/objects/casting.h"
#include "src/objects/tagged.h"
#include "v8-handle-base.h"
Include dependency graph for handles.h:

Go to the source code of this file.

Classes

class  v8::internal::HandleBase
 
class  v8::internal::Handle< T >
 
struct  v8::internal::Handle< T >::equal_to
 
struct  v8::internal::Handle< T >::hash
 
class  v8::internal::HandleScope
 
class  v8::internal::SealHandleScope
 
struct  v8::internal::HandleScopeData
 
struct  v8::internal::is_direct_handle< T >
 
class  v8::internal::DirectHandle< T >
 
class  v8::internal::DirectHandleUnchecked< T >
 
class  v8::internal::DirectHandleVector< T >
 
class  v8::internal::DirectHandleSmallVector< T, kSize >
 
struct  v8::internal::is_direct_handle< DirectHandle< T > >
 

Namespaces

namespace  v8
 
namespace  v8::internal
 

Typedefs

using v8::internal::CanonicalHandlesMap = IdentityMap<Address*, ZoneAllocationPolicy>
 

Functions

template<typename T >
std::ostream & v8::internal::operator<< (std::ostream &os, IndirectHandle< T > handle)
 
template<typename T >
V8_INLINE IndirectHandle< Tv8::internal::indirect_handle (DirectHandle< T > handle)
 
template<typename T >
V8_INLINE IndirectHandle< Tv8::internal::indirect_handle (DirectHandle< T > handle, Isolate *isolate)
 
template<typename T >
V8_INLINE IndirectHandle< Tv8::internal::indirect_handle (DirectHandle< T > handle, LocalIsolate *isolate)
 
template<typename T >
V8_INLINE IndirectHandle< Tv8::internal::indirect_handle (DirectHandle< T > handle, LocalHeap *local_heap)
 
template<typename T , template< typename > typename HandleType>
requires (std::is_convertible_v<HandleType<T>, DirectHandle<T>>)
V8_INLINE DirectHandle< Tv8::internal::direct_handle (HandleType< T > handle)
 
template<typename T >
std::ostream & v8::internal::operator<< (std::ostream &os, DirectHandle< T > handle)
 

Variables

constexpr Address v8::internal::kTaggedNullAddress = 0x1
 
template<typename T >
static constexpr bool v8::internal::is_direct_handle_v = is_direct_handle<T>::value