Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(154)

Side by Side Diff: include/v8.h

Issue 985873002: api: introduce SealHandleScope (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: fixes Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | src/api.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 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 /** \mainpage V8 API Reference Guide 5 /** \mainpage V8 API Reference Guide
6 * 6 *
7 * V8 is Google's open source JavaScript engine. 7 * V8 is Google's open source JavaScript engine.
8 * 8 *
9 * This set of documents provides reference material generated from the 9 * This set of documents provides reference material generated from the
10 * V8 header file, include/v8.h. 10 * V8 header file, include/v8.h.
(...skipping 960 matching lines...) Expand 10 before | Expand all | Expand 10 after
971 // Make it hard to create heap-allocated or illegal handle scopes by 971 // Make it hard to create heap-allocated or illegal handle scopes by
972 // disallowing certain operations. 972 // disallowing certain operations.
973 EscapableHandleScope(const EscapableHandleScope&); 973 EscapableHandleScope(const EscapableHandleScope&);
974 void operator=(const EscapableHandleScope&); 974 void operator=(const EscapableHandleScope&);
975 void* operator new(size_t size); 975 void* operator new(size_t size);
976 void operator delete(void*, size_t); 976 void operator delete(void*, size_t);
977 977
978 internal::Object** escape_slot_; 978 internal::Object** escape_slot_;
979 }; 979 };
980 980
981 class V8_EXPORT SealHandleScope {
982 public:
983 SealHandleScope(Isolate* isolate);
984 ~SealHandleScope();
985
986 private:
987 // Make it hard to create heap-allocated or illegal handle scopes by
988 // disallowing certain operations.
989 SealHandleScope(const SealHandleScope&);
990 void operator=(const SealHandleScope&);
991 void* operator new(size_t size);
992 void operator delete(void*, size_t);
993
994 internal::Isolate* isolate_;
995 int prev_level_;
996 internal::Object** prev_limit_;
997 };
998
981 999
982 // --- Special objects --- 1000 // --- Special objects ---
983 1001
984 1002
985 /** 1003 /**
986 * The superclass of values and API object templates. 1004 * The superclass of values and API object templates.
987 */ 1005 */
988 class V8_EXPORT Data { 1006 class V8_EXPORT Data {
989 private: 1007 private:
990 Data(); 1008 Data();
(...skipping 6784 matching lines...) Expand 10 before | Expand all | Expand 10 after
7775 */ 7793 */
7776 7794
7777 7795
7778 } // namespace v8 7796 } // namespace v8
7779 7797
7780 7798
7781 #undef TYPE_CHECK 7799 #undef TYPE_CHECK
7782 7800
7783 7801
7784 #endif // V8_H_ 7802 #endif // V8_H_
OLDNEW
« no previous file with comments | « no previous file | src/api.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698