5#ifndef INCLUDE_V8_INITIALIZATION_H_
6#define INCLUDE_V8_INITIALIZATION_H_
28template <
class K,
class V,
class T>
29class PersistentValueMapBase;
51 uintptr_t (*)(uintptr_t return_addr_location);
110#ifdef V8_TARGET_OS_ANDROID
111 const bool kV8TargetOsIsAndroid =
true;
113 const bool kV8TargetOsIsAndroid =
false;
116#ifdef V8_ENABLE_CHECKS
117 const bool kV8EnableChecks =
true;
119 const bool kV8EnableChecks =
false;
122 const int kBuildConfiguration =
123 (internal::PointerCompressionIsEnabled() ? kPointerCompression : 0) |
124 (internal::SmiValuesAre31Bits() ? k31BitSmis : 0) |
125 (internal::SandboxIsEnabled() ? kSandbox : 0) |
126 (kV8TargetOsIsAndroid ? kTargetOsIsAndroid : 0) |
127 (kV8EnableChecks ? kEnableChecks : 0);
128 return Initialize(kBuildConfiguration);
177 const char* icu_data_file =
nullptr);
209#if defined(V8_ENABLE_SANDBOX)
218 enum class SandboxMode : uint8_t {
232 kInsecurePartialReservationSmiInaccessible = 2,
236 kInsecureFullReservationSmiAccessible = 3,
241 kInsecurePartialReservationSmiAccessible = 4,
243 kMaxValue = kInsecurePartialReservationSmiAccessible,
249 static SandboxMode GetSandboxMode();
261 static bool IsSandboxConfiguredSecurely();
283 static size_t GetSandboxSizeInBytes();
295 static size_t GetSandboxReservationSizeInBytes();
308 static void SetInSandboxAllocator(std::shared_ptr<Allocator> allocator);
338 size_t byte_capacity);
348#if defined(V8_OS_WIN)
358 static void SetUnhandledExceptionCallback(
359 UnhandledExceptionCallback callback);
377 enum BuildConfigurationFeatures {
378 kPointerCompression = 1 << 0,
381 kTargetOsIsAndroid = 1 << 3,
382 kEnableChecks = 1 << 4,
389 static bool Initialize(
int build_config);
392 template <
class K,
class V,
class T>
Definition: v8-context.h:48
Definition: v8-util.h:166
Definition: v8-statistics.h:116
Definition: v8-snapshot.h:21
Definition: v8-initialization.h:62
static void InitializePlatform(Platform *platform)
static void SetFatalErrorHandler(V8FatalErrorCallback that)
static const char * GetVersion()
static bool InitializeICUDefaultLocation(const char *exec_path, const char *icu_data_file=nullptr)
static void SetSnapshotDataBlob(StartupData *startup_blob)
static size_t GetWasmMemoryReservationSizeInBytes(WasmMemoryType type, size_t byte_capacity)
static void InitializeExternalStartupDataFromFile(const char *snapshot_blob)
static bool EnableWebAssemblyTrapHandler(bool use_v8_signal_handler)
static bool Initialize()
Definition: v8-initialization.h:109
static void SetEntropySource(EntropySource source)
static void SetDcheckErrorHandler(DcheckErrorCallback that)
static void SetFlagsFromCommandLine(int *argc, char **argv, bool remove_flags)
static void DisposePlatform()
static bool InitializeICU(const char *icu_data_file=nullptr)
static void GetSharedMemoryStatistics(SharedMemoryStatistics *statistics)
static void SetReturnAddressLocationResolver(ReturnAddressLocationResolver return_address_resolver)
WasmMemoryType
Definition: v8-initialization.h:311
static void SetFlagsFromString(const char *str, size_t length)
static void SetFatalMemoryErrorCallback(OOMErrorCallback callback)
static void InitializeExternalStartupData(const char *directory_path)
static void SetFlagsFromString(const char *str)
Definition: v8-platform.h:894
v8::PageAllocator PageAllocator
Definition: platform.h:22
Definition: libplatform.h:15
void(*)(const char *location, const OOMDetails &details) OOMErrorCallback
Definition: v8-callbacks.h:234
void(*)(const char *file, int line, const char *message) V8FatalErrorCallback
Definition: v8-initialization.h:57
void(*)(const char *file, int line, const char *message) DcheckErrorCallback
Definition: v8-initialization.h:54
uintptr_t(*)(uintptr_t return_addr_location) ReturnAddressLocationResolver
Definition: v8-initialization.h:51
bool(*)(unsigned char *buffer, size_t length) EntropySource
Definition: v8-initialization.h:35
#define V8_EXPORT
Definition: v8config.h:867
#define V8_INLINE
Definition: v8config.h:511