OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_V8_H_ | 5 #ifndef V8_V8_H_ |
6 #define V8_V8_H_ | 6 #define V8_V8_H_ |
7 | 7 |
8 #include "include/v8.h" | 8 #include "include/v8.h" |
9 #include "src/allocation.h" | 9 #include "src/allocation.h" |
| 10 #include "src/globals.h" |
10 | 11 |
11 namespace v8 { | 12 namespace v8 { |
12 namespace internal { | 13 namespace internal { |
13 | 14 |
14 class V8 : public AllStatic { | 15 class V8 : public AllStatic { |
15 public: | 16 public: |
16 // Global actions. | 17 // Global actions. |
17 | 18 |
18 static bool Initialize(); | 19 static bool Initialize(); |
19 static void TearDown(); | 20 static void TearDown(); |
20 | 21 |
21 // Report process out of memory. Implementation found in api.cc. | 22 // Report process out of memory. Implementation found in api.cc. |
22 // This function will not return, but will terminate the execution. | 23 // This function will not return, but will terminate the execution. |
23 static void FatalProcessOutOfMemory(const char* location, | 24 static void FatalProcessOutOfMemory(const char* location, |
24 bool is_heap_oom = false); | 25 bool is_heap_oom = false); |
25 | 26 |
26 static void InitializePlatform(v8::Platform* platform); | 27 static void InitializePlatform(v8::Platform* platform); |
27 static void ShutdownPlatform(); | 28 static void ShutdownPlatform(); |
28 static v8::Platform* GetCurrentPlatform(); | 29 V8_EXPORT_PRIVATE static v8::Platform* GetCurrentPlatform(); |
29 // Replaces the current platform with the given platform. | 30 // Replaces the current platform with the given platform. |
30 // Should be used only for testing. | 31 // Should be used only for testing. |
31 static void SetPlatformForTesting(v8::Platform* platform); | 32 static void SetPlatformForTesting(v8::Platform* platform); |
32 | 33 |
33 static void SetNativesBlob(StartupData* natives_blob); | 34 static void SetNativesBlob(StartupData* natives_blob); |
34 static void SetSnapshotBlob(StartupData* snapshot_blob); | 35 static void SetSnapshotBlob(StartupData* snapshot_blob); |
35 | 36 |
36 private: | 37 private: |
37 static void InitializeOncePerProcessImpl(); | 38 static void InitializeOncePerProcessImpl(); |
38 static void InitializeOncePerProcess(); | 39 static void InitializeOncePerProcess(); |
39 | 40 |
40 // v8::Platform to use. | 41 // v8::Platform to use. |
41 static v8::Platform* platform_; | 42 static v8::Platform* platform_; |
42 }; | 43 }; |
43 | 44 |
44 } // namespace internal | 45 } // namespace internal |
45 } // namespace v8 | 46 } // namespace v8 |
46 | 47 |
47 #endif // V8_V8_H_ | 48 #endif // V8_V8_H_ |
OLD | NEW |