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

Side by Side Diff: include/v8.h

Issue 1526643002: Mark all APIs without callers in Blink as deprecated (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: updates Created 5 years 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 | no next file » | 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 406 matching lines...) Expand 10 before | Expand all | Expand 10 after
417 : isolate_(isolate), parameter_(parameter), callback_(callback) { 417 : isolate_(isolate), parameter_(parameter), callback_(callback) {
418 for (int i = 0; i < kInternalFieldsInWeakCallback; ++i) { 418 for (int i = 0; i < kInternalFieldsInWeakCallback; ++i) {
419 internal_fields_[i] = internal_fields[i]; 419 internal_fields_[i] = internal_fields[i];
420 } 420 }
421 } 421 }
422 422
423 V8_INLINE Isolate* GetIsolate() const { return isolate_; } 423 V8_INLINE Isolate* GetIsolate() const { return isolate_; }
424 V8_INLINE T* GetParameter() const { return parameter_; } 424 V8_INLINE T* GetParameter() const { return parameter_; }
425 V8_INLINE void* GetInternalField(int index) const; 425 V8_INLINE void* GetInternalField(int index) const;
426 426
427 V8_INLINE V8_DEPRECATE_SOON("use indexed version", 427 V8_INLINE V8_DEPRECATED("use indexed version",
428 void* GetInternalField1() const) { 428 void* GetInternalField1() const) {
429 return internal_fields_[0]; 429 return internal_fields_[0];
430 } 430 }
431 V8_INLINE V8_DEPRECATE_SOON("use indexed version", 431 V8_INLINE V8_DEPRECATED("use indexed version",
432 void* GetInternalField2() const) { 432 void* GetInternalField2() const) {
433 return internal_fields_[1]; 433 return internal_fields_[1];
434 } 434 }
435 435
436 bool IsFirstPass() const { return callback_ != nullptr; } 436 bool IsFirstPass() const { return callback_ != nullptr; }
437 437
438 // When first called, the embedder MUST Reset() the Global which triggered the 438 // When first called, the embedder MUST Reset() the Global which triggered the
439 // callback. The Global itself is unusable for anything else. No v8 other api 439 // callback. The Global itself is unusable for anything else. No v8 other api
440 // calls may be called in the first callback. Should additional work be 440 // calls may be called in the first callback. Should additional work be
441 // required, the embedder must set a second pass callback, which will be 441 // required, the embedder must set a second pass callback, which will be
442 // called after all the initial callbacks are processed. 442 // called after all the initial callbacks are processed.
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after
548 } 548 }
549 549
550 /** 550 /**
551 * Install a finalization callback on this object. 551 * Install a finalization callback on this object.
552 * NOTE: There is no guarantee as to *when* or even *if* the callback is 552 * NOTE: There is no guarantee as to *when* or even *if* the callback is
553 * invoked. The invocation is performed solely on a best effort basis. 553 * invoked. The invocation is performed solely on a best effort basis.
554 * As always, GC-based finalization should *not* be relied upon for any 554 * As always, GC-based finalization should *not* be relied upon for any
555 * critical form of resource management! 555 * critical form of resource management!
556 */ 556 */
557 template <typename P> 557 template <typename P>
558 V8_INLINE V8_DEPRECATE_SOON( 558 V8_INLINE V8_DEPRECATED(
559 "use WeakCallbackInfo version", 559 "use WeakCallbackInfo version",
560 void SetWeak(P* parameter, 560 void SetWeak(P* parameter,
561 typename WeakCallbackData<T, P>::Callback callback)); 561 typename WeakCallbackData<T, P>::Callback callback));
562 562
563 template <typename S, typename P> 563 template <typename S, typename P>
564 V8_INLINE V8_DEPRECATE_SOON( 564 V8_INLINE V8_DEPRECATED(
565 "use WeakCallbackInfo version", 565 "use WeakCallbackInfo version",
566 void SetWeak(P* parameter, 566 void SetWeak(P* parameter,
567 typename WeakCallbackData<S, P>::Callback callback)); 567 typename WeakCallbackData<S, P>::Callback callback));
568 568
569 // Phantom persistents work like weak persistents, except that the pointer to 569 // Phantom persistents work like weak persistents, except that the pointer to
570 // the object being collected is not available in the finalization callback. 570 // the object being collected is not available in the finalization callback.
571 // This enables the garbage collector to collect the object and any objects 571 // This enables the garbage collector to collect the object and any objects
572 // it references transitively in one GC cycle. At the moment you can either 572 // it references transitively in one GC cycle. At the moment you can either
573 // specify a parameter for the callback or the location of two internal 573 // specify a parameter for the callback or the location of two internal
574 // fields in the dying object. 574 // fields in the dying object.
575 template <typename P> 575 template <typename P>
576 V8_INLINE V8_DEPRECATE_SOON( 576 V8_INLINE V8_DEPRECATED(
577 "use SetWeak", 577 "use SetWeak",
578 void SetPhantom(P* parameter, 578 void SetPhantom(P* parameter,
579 typename WeakCallbackInfo<P>::Callback callback, 579 typename WeakCallbackInfo<P>::Callback callback,
580 int internal_field_index1 = -1, 580 int internal_field_index1 = -1,
581 int internal_field_index2 = -1)); 581 int internal_field_index2 = -1));
582 582
583 template <typename P> 583 template <typename P>
584 V8_INLINE void SetWeak(P* parameter, 584 V8_INLINE void SetWeak(P* parameter,
585 typename WeakCallbackInfo<P>::Callback callback, 585 typename WeakCallbackInfo<P>::Callback callback,
586 WeakCallbackType type); 586 WeakCallbackType type);
(...skipping 723 matching lines...) Expand 10 before | Expand all | Expand 10 after
1310 * consumed later to speed up compilation of identical source scripts. 1310 * consumed later to speed up compilation of identical source scripts.
1311 * 1311 *
1312 * Note that when producing cached data, the source must point to NULL for 1312 * Note that when producing cached data, the source must point to NULL for
1313 * cached data. When consuming cached data, the cached data must have been 1313 * cached data. When consuming cached data, the cached data must have been
1314 * produced by the same version of V8. 1314 * produced by the same version of V8.
1315 * 1315 *
1316 * \param source Script source code. 1316 * \param source Script source code.
1317 * \return Compiled script object (context independent; for running it must be 1317 * \return Compiled script object (context independent; for running it must be
1318 * bound to a context). 1318 * bound to a context).
1319 */ 1319 */
1320 static V8_DEPRECATE_SOON("Use maybe version", 1320 static V8_DEPRECATED("Use maybe version",
1321 Local<UnboundScript> CompileUnbound( 1321 Local<UnboundScript> CompileUnbound(
1322 Isolate* isolate, Source* source, 1322 Isolate* isolate, Source* source,
1323 CompileOptions options = kNoCompileOptions)); 1323 CompileOptions options = kNoCompileOptions));
1324 static V8_WARN_UNUSED_RESULT MaybeLocal<UnboundScript> CompileUnboundScript( 1324 static V8_WARN_UNUSED_RESULT MaybeLocal<UnboundScript> CompileUnboundScript(
1325 Isolate* isolate, Source* source, 1325 Isolate* isolate, Source* source,
1326 CompileOptions options = kNoCompileOptions); 1326 CompileOptions options = kNoCompileOptions);
1327 1327
1328 /** 1328 /**
1329 * Compiles the specified script (bound to current context). 1329 * Compiles the specified script (bound to current context).
1330 * 1330 *
1331 * \param source Script source code. 1331 * \param source Script source code.
1332 * \param pre_data Pre-parsing data, as obtained by ScriptData::PreCompile() 1332 * \param pre_data Pre-parsing data, as obtained by ScriptData::PreCompile()
1333 * using pre_data speeds compilation if it's done multiple times. 1333 * using pre_data speeds compilation if it's done multiple times.
1334 * Owned by caller, no references are kept when this function returns. 1334 * Owned by caller, no references are kept when this function returns.
1335 * \return Compiled script object, bound to the context that was active 1335 * \return Compiled script object, bound to the context that was active
1336 * when this function was called. When run it will always use this 1336 * when this function was called. When run it will always use this
1337 * context. 1337 * context.
1338 */ 1338 */
1339 static V8_DEPRECATE_SOON( 1339 static V8_DEPRECATED(
1340 "Use maybe version", 1340 "Use maybe version",
1341 Local<Script> Compile(Isolate* isolate, Source* source, 1341 Local<Script> Compile(Isolate* isolate, Source* source,
1342 CompileOptions options = kNoCompileOptions)); 1342 CompileOptions options = kNoCompileOptions));
1343 static V8_WARN_UNUSED_RESULT MaybeLocal<Script> Compile( 1343 static V8_WARN_UNUSED_RESULT MaybeLocal<Script> Compile(
1344 Local<Context> context, Source* source, 1344 Local<Context> context, Source* source,
1345 CompileOptions options = kNoCompileOptions); 1345 CompileOptions options = kNoCompileOptions);
1346 1346
1347 /** 1347 /**
1348 * Returns a task which streams script data into V8, or NULL if the script 1348 * Returns a task which streams script data into V8, or NULL if the script
1349 * cannot be streamed. The user is responsible for running the task on a 1349 * cannot be streamed. The user is responsible for running the task on a
1350 * background thread and deleting it. When ran, the task starts parsing the 1350 * background thread and deleting it. When ran, the task starts parsing the
1351 * script, and it will request data from the StreamedSource as needed. When 1351 * script, and it will request data from the StreamedSource as needed. When
1352 * ScriptStreamingTask::Run exits, all data has been streamed and the script 1352 * ScriptStreamingTask::Run exits, all data has been streamed and the script
1353 * can be compiled (see Compile below). 1353 * can be compiled (see Compile below).
1354 * 1354 *
1355 * This API allows to start the streaming with as little data as possible, and 1355 * This API allows to start the streaming with as little data as possible, and
1356 * the remaining data (for example, the ScriptOrigin) is passed to Compile. 1356 * the remaining data (for example, the ScriptOrigin) is passed to Compile.
1357 */ 1357 */
1358 static ScriptStreamingTask* StartStreamingScript( 1358 static ScriptStreamingTask* StartStreamingScript(
1359 Isolate* isolate, StreamedSource* source, 1359 Isolate* isolate, StreamedSource* source,
1360 CompileOptions options = kNoCompileOptions); 1360 CompileOptions options = kNoCompileOptions);
1361 1361
1362 /** 1362 /**
1363 * Compiles a streamed script (bound to current context). 1363 * Compiles a streamed script (bound to current context).
1364 * 1364 *
1365 * This can only be called after the streaming has finished 1365 * This can only be called after the streaming has finished
1366 * (ScriptStreamingTask has been run). V8 doesn't construct the source string 1366 * (ScriptStreamingTask has been run). V8 doesn't construct the source string
1367 * during streaming, so the embedder needs to pass the full source here. 1367 * during streaming, so the embedder needs to pass the full source here.
1368 */ 1368 */
1369 static V8_DEPRECATE_SOON( 1369 static V8_DEPRECATED("Use maybe version",
1370 "Use maybe version", 1370 Local<Script> Compile(Isolate* isolate,
1371 Local<Script> Compile(Isolate* isolate, StreamedSource* source, 1371 StreamedSource* source,
1372 Local<String> full_source_string, 1372 Local<String> full_source_string,
1373 const ScriptOrigin& origin)); 1373 const ScriptOrigin& origin));
1374 static V8_WARN_UNUSED_RESULT MaybeLocal<Script> Compile( 1374 static V8_WARN_UNUSED_RESULT MaybeLocal<Script> Compile(
1375 Local<Context> context, StreamedSource* source, 1375 Local<Context> context, StreamedSource* source,
1376 Local<String> full_source_string, const ScriptOrigin& origin); 1376 Local<String> full_source_string, const ScriptOrigin& origin);
1377 1377
1378 /** 1378 /**
1379 * Return a version tag for CachedData for the current V8 version & flags. 1379 * Return a version tag for CachedData for the current V8 version & flags.
1380 * 1380 *
1381 * This value is meant only for determining whether a previously generated 1381 * This value is meant only for determining whether a previously generated
1382 * CachedData instance is still valid; the tag has no other meaing. 1382 * CachedData instance is still valid; the tag has no other meaing.
1383 * 1383 *
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after
1489 * Returns the index within the line of the first character where 1489 * Returns the index within the line of the first character where
1490 * the error occurred. 1490 * the error occurred.
1491 */ 1491 */
1492 V8_DEPRECATE_SOON("Use maybe version", int GetStartColumn() const); 1492 V8_DEPRECATE_SOON("Use maybe version", int GetStartColumn() const);
1493 V8_WARN_UNUSED_RESULT Maybe<int> GetStartColumn(Local<Context> context) const; 1493 V8_WARN_UNUSED_RESULT Maybe<int> GetStartColumn(Local<Context> context) const;
1494 1494
1495 /** 1495 /**
1496 * Returns the index within the line of the last character where 1496 * Returns the index within the line of the last character where
1497 * the error occurred. 1497 * the error occurred.
1498 */ 1498 */
1499 V8_DEPRECATE_SOON("Use maybe version", int GetEndColumn() const); 1499 V8_DEPRECATED("Use maybe version", int GetEndColumn() const);
1500 V8_WARN_UNUSED_RESULT Maybe<int> GetEndColumn(Local<Context> context) const; 1500 V8_WARN_UNUSED_RESULT Maybe<int> GetEndColumn(Local<Context> context) const;
1501 1501
1502 /** 1502 /**
1503 * Passes on the value set by the embedder when it fed the script from which 1503 * Passes on the value set by the embedder when it fed the script from which
1504 * this Message was generated to V8. 1504 * this Message was generated to V8.
1505 */ 1505 */
1506 bool IsSharedCrossOrigin() const; 1506 bool IsSharedCrossOrigin() const;
1507 bool IsOpaque() const; 1507 bool IsOpaque() const;
1508 1508
1509 // TODO(1245381): Print to a string instead of on a FILE. 1509 // TODO(1245381): Print to a string instead of on a FILE.
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after
1657 */ 1657 */
1658 class V8_EXPORT JSON { 1658 class V8_EXPORT JSON {
1659 public: 1659 public:
1660 /** 1660 /**
1661 * Tries to parse the string |json_string| and returns it as value if 1661 * Tries to parse the string |json_string| and returns it as value if
1662 * successful. 1662 * successful.
1663 * 1663 *
1664 * \param json_string The string to parse. 1664 * \param json_string The string to parse.
1665 * \return The corresponding value if successfully parsed. 1665 * \return The corresponding value if successfully parsed.
1666 */ 1666 */
1667 static V8_DEPRECATE_SOON("Use maybe version", 1667 static V8_DEPRECATED("Use maybe version",
1668 Local<Value> Parse(Local<String> json_string)); 1668 Local<Value> Parse(Local<String> json_string));
1669 static V8_WARN_UNUSED_RESULT MaybeLocal<Value> Parse( 1669 static V8_WARN_UNUSED_RESULT MaybeLocal<Value> Parse(
1670 Isolate* isolate, Local<String> json_string); 1670 Isolate* isolate, Local<String> json_string);
1671 }; 1671 };
1672 1672
1673 1673
1674 /** 1674 /**
1675 * A map whose keys are referenced weakly. It is similar to JavaScript WeakMap 1675 * A map whose keys are referenced weakly. It is similar to JavaScript WeakMap
1676 * but can be created without entering a v8::Context and hence shouldn't 1676 * but can be created without entering a v8::Context and hence shouldn't
1677 * escape to JavaScript. 1677 * escape to JavaScript.
1678 */ 1678 */
(...skipping 291 matching lines...) Expand 10 before | Expand all | Expand 10 after
1970 V8_WARN_UNUSED_RESULT MaybeLocal<Uint32> ToUint32( 1970 V8_WARN_UNUSED_RESULT MaybeLocal<Uint32> ToUint32(
1971 Local<Context> context) const; 1971 Local<Context> context) const;
1972 V8_WARN_UNUSED_RESULT MaybeLocal<Int32> ToInt32(Local<Context> context) const; 1972 V8_WARN_UNUSED_RESULT MaybeLocal<Int32> ToInt32(Local<Context> context) const;
1973 1973
1974 V8_DEPRECATE_SOON("Use maybe version", 1974 V8_DEPRECATE_SOON("Use maybe version",
1975 Local<Boolean> ToBoolean(Isolate* isolate) const); 1975 Local<Boolean> ToBoolean(Isolate* isolate) const);
1976 V8_DEPRECATE_SOON("Use maybe version", 1976 V8_DEPRECATE_SOON("Use maybe version",
1977 Local<Number> ToNumber(Isolate* isolate) const); 1977 Local<Number> ToNumber(Isolate* isolate) const);
1978 V8_DEPRECATE_SOON("Use maybe version", 1978 V8_DEPRECATE_SOON("Use maybe version",
1979 Local<String> ToString(Isolate* isolate) const); 1979 Local<String> ToString(Isolate* isolate) const);
1980 V8_DEPRECATE_SOON("Use maybe version", 1980 V8_DEPRECATED("Use maybe version",
1981 Local<String> ToDetailString(Isolate* isolate) const); 1981 Local<String> ToDetailString(Isolate* isolate) const);
1982 V8_DEPRECATE_SOON("Use maybe version", 1982 V8_DEPRECATE_SOON("Use maybe version",
1983 Local<Object> ToObject(Isolate* isolate) const); 1983 Local<Object> ToObject(Isolate* isolate) const);
1984 V8_DEPRECATE_SOON("Use maybe version", 1984 V8_DEPRECATE_SOON("Use maybe version",
1985 Local<Integer> ToInteger(Isolate* isolate) const); 1985 Local<Integer> ToInteger(Isolate* isolate) const);
1986 V8_DEPRECATE_SOON("Use maybe version", 1986 V8_DEPRECATED("Use maybe version",
1987 Local<Uint32> ToUint32(Isolate* isolate) const); 1987 Local<Uint32> ToUint32(Isolate* isolate) const);
1988 V8_DEPRECATE_SOON("Use maybe version", 1988 V8_DEPRECATE_SOON("Use maybe version",
1989 Local<Int32> ToInt32(Isolate* isolate) const); 1989 Local<Int32> ToInt32(Isolate* isolate) const);
1990 1990
1991 inline V8_DEPRECATE_SOON("Use maybe version", 1991 inline V8_DEPRECATE_SOON("Use maybe version",
1992 Local<Boolean> ToBoolean() const); 1992 Local<Boolean> ToBoolean() const);
1993 inline V8_DEPRECATE_SOON("Use maybe version", Local<Number> ToNumber() const); 1993 inline V8_DEPRECATED("Use maybe version", Local<Number> ToNumber() const);
1994 inline V8_DEPRECATE_SOON("Use maybe version", Local<String> ToString() const); 1994 inline V8_DEPRECATE_SOON("Use maybe version", Local<String> ToString() const);
1995 inline V8_DEPRECATE_SOON("Use maybe version", 1995 inline V8_DEPRECATED("Use maybe version",
1996 Local<String> ToDetailString() const); 1996 Local<String> ToDetailString() const);
1997 inline V8_DEPRECATE_SOON("Use maybe version", Local<Object> ToObject() const); 1997 inline V8_DEPRECATE_SOON("Use maybe version", Local<Object> ToObject() const);
1998 inline V8_DEPRECATE_SOON("Use maybe version", 1998 inline V8_DEPRECATE_SOON("Use maybe version",
1999 Local<Integer> ToInteger() const); 1999 Local<Integer> ToInteger() const);
2000 inline V8_DEPRECATE_SOON("Use maybe version", Local<Uint32> ToUint32() const); 2000 inline V8_DEPRECATED("Use maybe version", Local<Uint32> ToUint32() const);
2001 inline V8_DEPRECATE_SOON("Use maybe version", Local<Int32> ToInt32() const); 2001 inline V8_DEPRECATED("Use maybe version", Local<Int32> ToInt32() const);
2002 2002
2003 /** 2003 /**
2004 * Attempts to convert a string to an array index. 2004 * Attempts to convert a string to an array index.
2005 * Returns an empty handle if the conversion fails. 2005 * Returns an empty handle if the conversion fails.
2006 */ 2006 */
2007 V8_DEPRECATE_SOON("Use maybe version", Local<Uint32> ToArrayIndex() const); 2007 V8_DEPRECATED("Use maybe version", Local<Uint32> ToArrayIndex() const);
2008 V8_WARN_UNUSED_RESULT MaybeLocal<Uint32> ToArrayIndex( 2008 V8_WARN_UNUSED_RESULT MaybeLocal<Uint32> ToArrayIndex(
2009 Local<Context> context) const; 2009 Local<Context> context) const;
2010 2010
2011 V8_WARN_UNUSED_RESULT Maybe<bool> BooleanValue(Local<Context> context) const; 2011 V8_WARN_UNUSED_RESULT Maybe<bool> BooleanValue(Local<Context> context) const;
2012 V8_WARN_UNUSED_RESULT Maybe<double> NumberValue(Local<Context> context) const; 2012 V8_WARN_UNUSED_RESULT Maybe<double> NumberValue(Local<Context> context) const;
2013 V8_WARN_UNUSED_RESULT Maybe<int64_t> IntegerValue( 2013 V8_WARN_UNUSED_RESULT Maybe<int64_t> IntegerValue(
2014 Local<Context> context) const; 2014 Local<Context> context) const;
2015 V8_WARN_UNUSED_RESULT Maybe<uint32_t> Uint32Value( 2015 V8_WARN_UNUSED_RESULT Maybe<uint32_t> Uint32Value(
2016 Local<Context> context) const; 2016 Local<Context> context) const;
2017 V8_WARN_UNUSED_RESULT Maybe<int32_t> Int32Value(Local<Context> context) const; 2017 V8_WARN_UNUSED_RESULT Maybe<int32_t> Int32Value(Local<Context> context) const;
(...skipping 283 matching lines...) Expand 10 before | Expand all | Expand 10 after
2301 NewStringType type = kNormalString, 2301 NewStringType type = kNormalString,
2302 int length = -1)); 2302 int length = -1));
2303 2303
2304 /** Allocates a new string from UTF-8 data. Only returns an empty value when 2304 /** Allocates a new string from UTF-8 data. Only returns an empty value when
2305 * length > kMaxLength. **/ 2305 * length > kMaxLength. **/
2306 static V8_WARN_UNUSED_RESULT MaybeLocal<String> NewFromUtf8( 2306 static V8_WARN_UNUSED_RESULT MaybeLocal<String> NewFromUtf8(
2307 Isolate* isolate, const char* data, v8::NewStringType type, 2307 Isolate* isolate, const char* data, v8::NewStringType type,
2308 int length = -1); 2308 int length = -1);
2309 2309
2310 /** Allocates a new string from Latin-1 data.*/ 2310 /** Allocates a new string from Latin-1 data.*/
2311 static V8_DEPRECATE_SOON( 2311 static V8_DEPRECATED(
2312 "Use maybe version", 2312 "Use maybe version",
2313 Local<String> NewFromOneByte(Isolate* isolate, const uint8_t* data, 2313 Local<String> NewFromOneByte(Isolate* isolate, const uint8_t* data,
2314 NewStringType type = kNormalString, 2314 NewStringType type = kNormalString,
2315 int length = -1)); 2315 int length = -1));
2316 2316
2317 /** Allocates a new string from Latin-1 data. Only returns an empty value 2317 /** Allocates a new string from Latin-1 data. Only returns an empty value
2318 * when length > kMaxLength. **/ 2318 * when length > kMaxLength. **/
2319 static V8_WARN_UNUSED_RESULT MaybeLocal<String> NewFromOneByte( 2319 static V8_WARN_UNUSED_RESULT MaybeLocal<String> NewFromOneByte(
2320 Isolate* isolate, const uint8_t* data, v8::NewStringType type, 2320 Isolate* isolate, const uint8_t* data, v8::NewStringType type,
2321 int length = -1); 2321 int length = -1);
(...skipping 18 matching lines...) Expand all
2340 static Local<String> Concat(Local<String> left, Local<String> right); 2340 static Local<String> Concat(Local<String> left, Local<String> right);
2341 2341
2342 /** 2342 /**
2343 * Creates a new external string using the data defined in the given 2343 * Creates a new external string using the data defined in the given
2344 * resource. When the external string is no longer live on V8's heap the 2344 * resource. When the external string is no longer live on V8's heap the
2345 * resource will be disposed by calling its Dispose method. The caller of 2345 * resource will be disposed by calling its Dispose method. The caller of
2346 * this function should not otherwise delete or modify the resource. Neither 2346 * this function should not otherwise delete or modify the resource. Neither
2347 * should the underlying buffer be deallocated or modified except through the 2347 * should the underlying buffer be deallocated or modified except through the
2348 * destructor of the external string resource. 2348 * destructor of the external string resource.
2349 */ 2349 */
2350 static V8_DEPRECATE_SOON( 2350 static V8_DEPRECATED("Use maybe version",
2351 "Use maybe version", 2351 Local<String> NewExternal(
2352 Local<String> NewExternal(Isolate* isolate, 2352 Isolate* isolate, ExternalStringResource* resource));
2353 ExternalStringResource* resource));
2354 static V8_WARN_UNUSED_RESULT MaybeLocal<String> NewExternalTwoByte( 2353 static V8_WARN_UNUSED_RESULT MaybeLocal<String> NewExternalTwoByte(
2355 Isolate* isolate, ExternalStringResource* resource); 2354 Isolate* isolate, ExternalStringResource* resource);
2356 2355
2357 /** 2356 /**
2358 * Associate an external string resource with this string by transforming it 2357 * Associate an external string resource with this string by transforming it
2359 * in place so that existing references to this string in the JavaScript heap 2358 * in place so that existing references to this string in the JavaScript heap
2360 * will use the external string resource. The external string resource's 2359 * will use the external string resource. The external string resource's
2361 * character contents need to be equivalent to this string. 2360 * character contents need to be equivalent to this string.
2362 * Returns true if the string has been changed to be an external string. 2361 * Returns true if the string has been changed to be an external string.
2363 * The string is not modified if the operation fails. See NewExternal for 2362 * The string is not modified if the operation fails. See NewExternal for
(...skipping 296 matching lines...) Expand 10 before | Expand all | Expand 10 after
2660 PropertyAttribute attributes = None); 2659 PropertyAttribute attributes = None);
2661 2660
2662 // Sets an own property on this object bypassing interceptors and 2661 // Sets an own property on this object bypassing interceptors and
2663 // overriding accessors or read-only properties. 2662 // overriding accessors or read-only properties.
2664 // 2663 //
2665 // Note that if the object has an interceptor the property will be set 2664 // Note that if the object has an interceptor the property will be set
2666 // locally, but since the interceptor takes precedence the local property 2665 // locally, but since the interceptor takes precedence the local property
2667 // will only be returned if the interceptor doesn't return a value. 2666 // will only be returned if the interceptor doesn't return a value.
2668 // 2667 //
2669 // Note also that this only works for named properties. 2668 // Note also that this only works for named properties.
2670 V8_DEPRECATE_SOON("Use CreateDataProperty / DefineOwnProperty", 2669 V8_DEPRECATED("Use CreateDataProperty / DefineOwnProperty",
2671 bool ForceSet(Local<Value> key, Local<Value> value, 2670 bool ForceSet(Local<Value> key, Local<Value> value,
2672 PropertyAttribute attribs = None)); 2671 PropertyAttribute attribs = None));
2673 V8_DEPRECATE_SOON("Use CreateDataProperty / DefineOwnProperty", 2672 V8_DEPRECATED("Use CreateDataProperty / DefineOwnProperty",
2674 Maybe<bool> ForceSet(Local<Context> context, 2673 Maybe<bool> ForceSet(Local<Context> context, Local<Value> key,
2675 Local<Value> key, Local<Value> value, 2674 Local<Value> value,
2676 PropertyAttribute attribs = None)); 2675 PropertyAttribute attribs = None));
2677 2676
2678 V8_DEPRECATE_SOON("Use maybe version", Local<Value> Get(Local<Value> key)); 2677 V8_DEPRECATE_SOON("Use maybe version", Local<Value> Get(Local<Value> key));
2679 V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context, 2678 V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
2680 Local<Value> key); 2679 Local<Value> key);
2681 2680
2682 V8_DEPRECATE_SOON("Use maybe version", Local<Value> Get(uint32_t index)); 2681 V8_DEPRECATE_SOON("Use maybe version", Local<Value> Get(uint32_t index));
2683 V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context, 2682 V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
2684 uint32_t index); 2683 uint32_t index);
2685 2684
2686 /** 2685 /**
2687 * Gets the property attributes of a property which can be None or 2686 * Gets the property attributes of a property which can be None or
2688 * any combination of ReadOnly, DontEnum and DontDelete. Returns 2687 * any combination of ReadOnly, DontEnum and DontDelete. Returns
2689 * None when the property doesn't exist. 2688 * None when the property doesn't exist.
2690 */ 2689 */
2691 V8_DEPRECATE_SOON("Use maybe version", 2690 V8_DEPRECATED("Use maybe version",
2692 PropertyAttribute GetPropertyAttributes(Local<Value> key)); 2691 PropertyAttribute GetPropertyAttributes(Local<Value> key));
2693 V8_WARN_UNUSED_RESULT Maybe<PropertyAttribute> GetPropertyAttributes( 2692 V8_WARN_UNUSED_RESULT Maybe<PropertyAttribute> GetPropertyAttributes(
2694 Local<Context> context, Local<Value> key); 2693 Local<Context> context, Local<Value> key);
2695 2694
2696 /** 2695 /**
2697 * Returns Object.getOwnPropertyDescriptor as per ES5 section 15.2.3.3. 2696 * Returns Object.getOwnPropertyDescriptor as per ES5 section 15.2.3.3.
2698 */ 2697 */
2699 V8_DEPRECATE_SOON("Use maybe version", 2698 V8_DEPRECATED("Use maybe version",
2700 Local<Value> GetOwnPropertyDescriptor(Local<String> key)); 2699 Local<Value> GetOwnPropertyDescriptor(Local<String> key));
2701 V8_WARN_UNUSED_RESULT MaybeLocal<Value> GetOwnPropertyDescriptor( 2700 V8_WARN_UNUSED_RESULT MaybeLocal<Value> GetOwnPropertyDescriptor(
2702 Local<Context> context, Local<String> key); 2701 Local<Context> context, Local<String> key);
2703 2702
2704 V8_DEPRECATE_SOON("Use maybe version", bool Has(Local<Value> key)); 2703 V8_DEPRECATE_SOON("Use maybe version", bool Has(Local<Value> key));
2705 V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context, 2704 V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context,
2706 Local<Value> key); 2705 Local<Value> key);
2707 2706
2708 V8_DEPRECATE_SOON("Use maybe version", bool Delete(Local<Value> key)); 2707 V8_DEPRECATE_SOON("Use maybe version", bool Delete(Local<Value> key));
2709 // TODO(dcarney): mark V8_WARN_UNUSED_RESULT 2708 // TODO(dcarney): mark V8_WARN_UNUSED_RESULT
2710 Maybe<bool> Delete(Local<Context> context, Local<Value> key); 2709 Maybe<bool> Delete(Local<Context> context, Local<Value> key);
2711 2710
2712 V8_DEPRECATE_SOON("Use maybe version", bool Has(uint32_t index)); 2711 V8_DEPRECATED("Use maybe version", bool Has(uint32_t index));
2713 V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context, uint32_t index); 2712 V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context, uint32_t index);
2714 2713
2715 V8_DEPRECATE_SOON("Use maybe version", bool Delete(uint32_t index)); 2714 V8_DEPRECATED("Use maybe version", bool Delete(uint32_t index));
2716 // TODO(dcarney): mark V8_WARN_UNUSED_RESULT 2715 // TODO(dcarney): mark V8_WARN_UNUSED_RESULT
2717 Maybe<bool> Delete(Local<Context> context, uint32_t index); 2716 Maybe<bool> Delete(Local<Context> context, uint32_t index);
2718 2717
2719 V8_DEPRECATE_SOON("Use maybe version", 2718 V8_DEPRECATED("Use maybe version",
2720 bool SetAccessor(Local<String> name, 2719 bool SetAccessor(Local<String> name,
2721 AccessorGetterCallback getter, 2720 AccessorGetterCallback getter,
2722 AccessorSetterCallback setter = 0, 2721 AccessorSetterCallback setter = 0,
2723 Local<Value> data = Local<Value>(), 2722 Local<Value> data = Local<Value>(),
2724 AccessControl settings = DEFAULT, 2723 AccessControl settings = DEFAULT,
2725 PropertyAttribute attribute = None)); 2724 PropertyAttribute attribute = None));
2726 V8_DEPRECATE_SOON("Use maybe version", 2725 V8_DEPRECATED("Use maybe version",
2727 bool SetAccessor(Local<Name> name, 2726 bool SetAccessor(Local<Name> name,
2728 AccessorNameGetterCallback getter, 2727 AccessorNameGetterCallback getter,
2729 AccessorNameSetterCallback setter = 0, 2728 AccessorNameSetterCallback setter = 0,
2730 Local<Value> data = Local<Value>(), 2729 Local<Value> data = Local<Value>(),
2731 AccessControl settings = DEFAULT, 2730 AccessControl settings = DEFAULT,
2732 PropertyAttribute attribute = None)); 2731 PropertyAttribute attribute = None));
2733 // TODO(dcarney): mark V8_WARN_UNUSED_RESULT 2732 // TODO(dcarney): mark V8_WARN_UNUSED_RESULT
2734 Maybe<bool> SetAccessor(Local<Context> context, Local<Name> name, 2733 Maybe<bool> SetAccessor(Local<Context> context, Local<Name> name,
2735 AccessorNameGetterCallback getter, 2734 AccessorNameGetterCallback getter,
2736 AccessorNameSetterCallback setter = 0, 2735 AccessorNameSetterCallback setter = 0,
2737 MaybeLocal<Value> data = MaybeLocal<Value>(), 2736 MaybeLocal<Value> data = MaybeLocal<Value>(),
2738 AccessControl settings = DEFAULT, 2737 AccessControl settings = DEFAULT,
2739 PropertyAttribute attribute = None); 2738 PropertyAttribute attribute = None);
2740 2739
2741 void SetAccessorProperty(Local<Name> name, Local<Function> getter, 2740 void SetAccessorProperty(Local<Name> name, Local<Function> getter,
2742 Local<Function> setter = Local<Function>(), 2741 Local<Function> setter = Local<Function>(),
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
2779 * be skipped by __proto__ and it does not consult the security 2778 * be skipped by __proto__ and it does not consult the security
2780 * handler. 2779 * handler.
2781 */ 2780 */
2782 Local<Value> GetPrototype(); 2781 Local<Value> GetPrototype();
2783 2782
2784 /** 2783 /**
2785 * Set the prototype object. This does not skip objects marked to 2784 * Set the prototype object. This does not skip objects marked to
2786 * be skipped by __proto__ and it does not consult the security 2785 * be skipped by __proto__ and it does not consult the security
2787 * handler. 2786 * handler.
2788 */ 2787 */
2789 V8_DEPRECATE_SOON("Use maybe version", 2788 V8_DEPRECATED("Use maybe version", bool SetPrototype(Local<Value> prototype));
2790 bool SetPrototype(Local<Value> prototype));
2791 V8_WARN_UNUSED_RESULT Maybe<bool> SetPrototype(Local<Context> context, 2789 V8_WARN_UNUSED_RESULT Maybe<bool> SetPrototype(Local<Context> context,
2792 Local<Value> prototype); 2790 Local<Value> prototype);
2793 2791
2794 /** 2792 /**
2795 * Finds an instance of the given function template in the prototype 2793 * Finds an instance of the given function template in the prototype
2796 * chain. 2794 * chain.
2797 */ 2795 */
2798 Local<Object> FindInstanceInPrototypeChain(Local<FunctionTemplate> tmpl); 2796 Local<Object> FindInstanceInPrototypeChain(Local<FunctionTemplate> tmpl);
2799 2797
2800 /** 2798 /**
2801 * Call builtin Object.prototype.toString on this object. 2799 * Call builtin Object.prototype.toString on this object.
2802 * This is different from Value::ToString() that may call 2800 * This is different from Value::ToString() that may call
2803 * user-defined toString function. This one does not. 2801 * user-defined toString function. This one does not.
2804 */ 2802 */
2805 V8_DEPRECATE_SOON("Use maybe version", Local<String> ObjectProtoToString()); 2803 V8_DEPRECATED("Use maybe version", Local<String> ObjectProtoToString());
2806 V8_WARN_UNUSED_RESULT MaybeLocal<String> ObjectProtoToString( 2804 V8_WARN_UNUSED_RESULT MaybeLocal<String> ObjectProtoToString(
2807 Local<Context> context); 2805 Local<Context> context);
2808 2806
2809 /** 2807 /**
2810 * Returns the name of the function invoked as a constructor for this object. 2808 * Returns the name of the function invoked as a constructor for this object.
2811 */ 2809 */
2812 Local<String> GetConstructorName(); 2810 Local<String> GetConstructorName();
2813 2811
2814 /** Gets the number of internal fields for this Object. */ 2812 /** Gets the number of internal fields for this Object. */
2815 int InternalFieldCount(); 2813 int InternalFieldCount();
(...skipping 24 matching lines...) Expand all
2840 } 2838 }
2841 2839
2842 /** 2840 /**
2843 * Sets a 2-byte-aligned native pointer in an internal field. To retrieve such 2841 * Sets a 2-byte-aligned native pointer in an internal field. To retrieve such
2844 * a field, GetAlignedPointerFromInternalField must be used, everything else 2842 * a field, GetAlignedPointerFromInternalField must be used, everything else
2845 * leads to undefined behavior. 2843 * leads to undefined behavior.
2846 */ 2844 */
2847 void SetAlignedPointerInInternalField(int index, void* value); 2845 void SetAlignedPointerInInternalField(int index, void* value);
2848 2846
2849 // Testers for local properties. 2847 // Testers for local properties.
2850 V8_DEPRECATE_SOON("Use maybe version", 2848 V8_DEPRECATED("Use maybe version", bool HasOwnProperty(Local<String> key));
2851 bool HasOwnProperty(Local<String> key));
2852 V8_WARN_UNUSED_RESULT Maybe<bool> HasOwnProperty(Local<Context> context, 2849 V8_WARN_UNUSED_RESULT Maybe<bool> HasOwnProperty(Local<Context> context,
2853 Local<Name> key); 2850 Local<Name> key);
2854 V8_DEPRECATE_SOON("Use maybe version", 2851 V8_DEPRECATE_SOON("Use maybe version",
2855 bool HasRealNamedProperty(Local<String> key)); 2852 bool HasRealNamedProperty(Local<String> key));
2856 V8_WARN_UNUSED_RESULT Maybe<bool> HasRealNamedProperty(Local<Context> context, 2853 V8_WARN_UNUSED_RESULT Maybe<bool> HasRealNamedProperty(Local<Context> context,
2857 Local<Name> key); 2854 Local<Name> key);
2858 V8_DEPRECATE_SOON("Use maybe version", 2855 V8_DEPRECATE_SOON("Use maybe version",
2859 bool HasRealIndexedProperty(uint32_t index)); 2856 bool HasRealIndexedProperty(uint32_t index));
2860 V8_WARN_UNUSED_RESULT Maybe<bool> HasRealIndexedProperty( 2857 V8_WARN_UNUSED_RESULT Maybe<bool> HasRealIndexedProperty(
2861 Local<Context> context, uint32_t index); 2858 Local<Context> context, uint32_t index);
2862 V8_DEPRECATE_SOON("Use maybe version", 2859 V8_DEPRECATE_SOON("Use maybe version",
2863 bool HasRealNamedCallbackProperty(Local<String> key)); 2860 bool HasRealNamedCallbackProperty(Local<String> key));
2864 V8_WARN_UNUSED_RESULT Maybe<bool> HasRealNamedCallbackProperty( 2861 V8_WARN_UNUSED_RESULT Maybe<bool> HasRealNamedCallbackProperty(
2865 Local<Context> context, Local<Name> key); 2862 Local<Context> context, Local<Name> key);
2866 2863
2867 /** 2864 /**
2868 * If result.IsEmpty() no real property was located in the prototype chain. 2865 * If result.IsEmpty() no real property was located in the prototype chain.
2869 * This means interceptors in the prototype chain are not called. 2866 * This means interceptors in the prototype chain are not called.
2870 */ 2867 */
2871 V8_DEPRECATE_SOON( 2868 V8_DEPRECATED(
2872 "Use maybe version", 2869 "Use maybe version",
2873 Local<Value> GetRealNamedPropertyInPrototypeChain(Local<String> key)); 2870 Local<Value> GetRealNamedPropertyInPrototypeChain(Local<String> key));
2874 V8_WARN_UNUSED_RESULT MaybeLocal<Value> GetRealNamedPropertyInPrototypeChain( 2871 V8_WARN_UNUSED_RESULT MaybeLocal<Value> GetRealNamedPropertyInPrototypeChain(
2875 Local<Context> context, Local<Name> key); 2872 Local<Context> context, Local<Name> key);
2876 2873
2877 /** 2874 /**
2878 * Gets the property attributes of a real property in the prototype chain, 2875 * Gets the property attributes of a real property in the prototype chain,
2879 * which can be None or any combination of ReadOnly, DontEnum and DontDelete. 2876 * which can be None or any combination of ReadOnly, DontEnum and DontDelete.
2880 * Interceptors in the prototype chain are not called. 2877 * Interceptors in the prototype chain are not called.
2881 */ 2878 */
2882 V8_DEPRECATE_SOON( 2879 V8_DEPRECATED(
2883 "Use maybe version", 2880 "Use maybe version",
2884 Maybe<PropertyAttribute> GetRealNamedPropertyAttributesInPrototypeChain( 2881 Maybe<PropertyAttribute> GetRealNamedPropertyAttributesInPrototypeChain(
2885 Local<String> key)); 2882 Local<String> key));
2886 V8_WARN_UNUSED_RESULT Maybe<PropertyAttribute> 2883 V8_WARN_UNUSED_RESULT Maybe<PropertyAttribute>
2887 GetRealNamedPropertyAttributesInPrototypeChain(Local<Context> context, 2884 GetRealNamedPropertyAttributesInPrototypeChain(Local<Context> context,
2888 Local<Name> key); 2885 Local<Name> key);
2889 2886
2890 /** 2887 /**
2891 * If result.IsEmpty() no real property was located on the object or 2888 * If result.IsEmpty() no real property was located on the object or
2892 * in the prototype chain. 2889 * in the prototype chain.
2893 * This means interceptors in the prototype chain are not called. 2890 * This means interceptors in the prototype chain are not called.
2894 */ 2891 */
2895 V8_DEPRECATE_SOON("Use maybe version", 2892 V8_DEPRECATED("Use maybe version",
2896 Local<Value> GetRealNamedProperty(Local<String> key)); 2893 Local<Value> GetRealNamedProperty(Local<String> key));
2897 V8_WARN_UNUSED_RESULT MaybeLocal<Value> GetRealNamedProperty( 2894 V8_WARN_UNUSED_RESULT MaybeLocal<Value> GetRealNamedProperty(
2898 Local<Context> context, Local<Name> key); 2895 Local<Context> context, Local<Name> key);
2899 2896
2900 /** 2897 /**
2901 * Gets the property attributes of a real property which can be 2898 * Gets the property attributes of a real property which can be
2902 * None or any combination of ReadOnly, DontEnum and DontDelete. 2899 * None or any combination of ReadOnly, DontEnum and DontDelete.
2903 * Interceptors in the prototype chain are not called. 2900 * Interceptors in the prototype chain are not called.
2904 */ 2901 */
2905 V8_DEPRECATE_SOON("Use maybe version", 2902 V8_DEPRECATED("Use maybe version",
2906 Maybe<PropertyAttribute> GetRealNamedPropertyAttributes( 2903 Maybe<PropertyAttribute> GetRealNamedPropertyAttributes(
2907 Local<String> key)); 2904 Local<String> key));
2908 V8_WARN_UNUSED_RESULT Maybe<PropertyAttribute> GetRealNamedPropertyAttributes( 2905 V8_WARN_UNUSED_RESULT Maybe<PropertyAttribute> GetRealNamedPropertyAttributes(
2909 Local<Context> context, Local<Name> key); 2906 Local<Context> context, Local<Name> key);
2910 2907
2911 /** Tests for a named lookup interceptor.*/ 2908 /** Tests for a named lookup interceptor.*/
2912 bool HasNamedLookupInterceptor(); 2909 bool HasNamedLookupInterceptor();
2913 2910
2914 /** Tests for an index lookup interceptor.*/ 2911 /** Tests for an index lookup interceptor.*/
2915 bool HasIndexedLookupInterceptor(); 2912 bool HasIndexedLookupInterceptor();
2916 2913
2917 /** 2914 /**
(...skipping 28 matching lines...) Expand all
2946 * Checks whether a callback is set by the 2943 * Checks whether a callback is set by the
2947 * ObjectTemplate::SetCallAsFunctionHandler method. 2944 * ObjectTemplate::SetCallAsFunctionHandler method.
2948 * When an Object is callable this method returns true. 2945 * When an Object is callable this method returns true.
2949 */ 2946 */
2950 bool IsCallable(); 2947 bool IsCallable();
2951 2948
2952 /** 2949 /**
2953 * Call an Object as a function if a callback is set by the 2950 * Call an Object as a function if a callback is set by the
2954 * ObjectTemplate::SetCallAsFunctionHandler method. 2951 * ObjectTemplate::SetCallAsFunctionHandler method.
2955 */ 2952 */
2956 V8_DEPRECATE_SOON("Use maybe version", 2953 V8_DEPRECATED("Use maybe version",
2957 Local<Value> CallAsFunction(Local<Value> recv, int argc, 2954 Local<Value> CallAsFunction(Local<Value> recv, int argc,
2958 Local<Value> argv[])); 2955 Local<Value> argv[]));
2959 V8_WARN_UNUSED_RESULT MaybeLocal<Value> CallAsFunction(Local<Context> context, 2956 V8_WARN_UNUSED_RESULT MaybeLocal<Value> CallAsFunction(Local<Context> context,
2960 Local<Value> recv, 2957 Local<Value> recv,
2961 int argc, 2958 int argc,
2962 Local<Value> argv[]); 2959 Local<Value> argv[]);
2963 2960
2964 /** 2961 /**
2965 * Call an Object as a constructor if a callback is set by the 2962 * Call an Object as a constructor if a callback is set by the
2966 * ObjectTemplate::SetCallAsFunctionHandler method. 2963 * ObjectTemplate::SetCallAsFunctionHandler method.
2967 * Note: This method behaves like the Function::NewInstance method. 2964 * Note: This method behaves like the Function::NewInstance method.
2968 */ 2965 */
2969 V8_DEPRECATE_SOON("Use maybe version", 2966 V8_DEPRECATED("Use maybe version",
2970 Local<Value> CallAsConstructor(int argc, 2967 Local<Value> CallAsConstructor(int argc, Local<Value> argv[]));
2971 Local<Value> argv[]));
2972 V8_WARN_UNUSED_RESULT MaybeLocal<Value> CallAsConstructor( 2968 V8_WARN_UNUSED_RESULT MaybeLocal<Value> CallAsConstructor(
2973 Local<Context> context, int argc, Local<Value> argv[]); 2969 Local<Context> context, int argc, Local<Value> argv[]);
2974 2970
2975 /** 2971 /**
2976 * Return the isolate to which the Object belongs to. 2972 * Return the isolate to which the Object belongs to.
2977 */ 2973 */
2978 V8_DEPRECATE_SOON("Keep track of isolate correctly", Isolate* GetIsolate()); 2974 V8_DEPRECATE_SOON("Keep track of isolate correctly", Isolate* GetIsolate());
2979 2975
2980 static Local<Object> New(Isolate* isolate); 2976 static Local<Object> New(Isolate* isolate);
2981 2977
(...skipping 237 matching lines...) Expand 10 before | Expand all | Expand 10 after
3219 */ 3215 */
3220 static MaybeLocal<Function> New(Local<Context> context, 3216 static MaybeLocal<Function> New(Local<Context> context,
3221 FunctionCallback callback, 3217 FunctionCallback callback,
3222 Local<Value> data = Local<Value>(), 3218 Local<Value> data = Local<Value>(),
3223 int length = 0); 3219 int length = 0);
3224 static V8_DEPRECATE_SOON( 3220 static V8_DEPRECATE_SOON(
3225 "Use maybe version", 3221 "Use maybe version",
3226 Local<Function> New(Isolate* isolate, FunctionCallback callback, 3222 Local<Function> New(Isolate* isolate, FunctionCallback callback,
3227 Local<Value> data = Local<Value>(), int length = 0)); 3223 Local<Value> data = Local<Value>(), int length = 0));
3228 3224
3229 V8_DEPRECATE_SOON("Use maybe version", 3225 V8_DEPRECATED("Use maybe version",
3230 Local<Object> NewInstance(int argc, Local<Value> argv[]) 3226 Local<Object> NewInstance(int argc, Local<Value> argv[]) const);
3231 const);
3232 V8_WARN_UNUSED_RESULT MaybeLocal<Object> NewInstance( 3227 V8_WARN_UNUSED_RESULT MaybeLocal<Object> NewInstance(
3233 Local<Context> context, int argc, Local<Value> argv[]) const; 3228 Local<Context> context, int argc, Local<Value> argv[]) const;
3234 3229
3235 V8_DEPRECATE_SOON("Use maybe version", Local<Object> NewInstance() const); 3230 V8_DEPRECATED("Use maybe version", Local<Object> NewInstance() const);
3236 V8_WARN_UNUSED_RESULT MaybeLocal<Object> NewInstance( 3231 V8_WARN_UNUSED_RESULT MaybeLocal<Object> NewInstance(
3237 Local<Context> context) const { 3232 Local<Context> context) const {
3238 return NewInstance(context, 0, nullptr); 3233 return NewInstance(context, 0, nullptr);
3239 } 3234 }
3240 3235
3241 V8_DEPRECATE_SOON("Use maybe version", 3236 V8_DEPRECATE_SOON("Use maybe version",
3242 Local<Value> Call(Local<Value> recv, int argc, 3237 Local<Value> Call(Local<Value> recv, int argc,
3243 Local<Value> argv[])); 3238 Local<Value> argv[]));
3244 V8_WARN_UNUSED_RESULT MaybeLocal<Value> Call(Local<Context> context, 3239 V8_WARN_UNUSED_RESULT MaybeLocal<Value> Call(Local<Context> context,
3245 Local<Value> recv, int argc, 3240 Local<Value> recv, int argc,
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
3344 Resolver(); 3339 Resolver();
3345 static void CheckCast(Value* obj); 3340 static void CheckCast(Value* obj);
3346 }; 3341 };
3347 3342
3348 /** 3343 /**
3349 * Register a resolution/rejection handler with a promise. 3344 * Register a resolution/rejection handler with a promise.
3350 * The handler is given the respective resolution/rejection value as 3345 * The handler is given the respective resolution/rejection value as
3351 * an argument. If the promise is already resolved/rejected, the handler is 3346 * an argument. If the promise is already resolved/rejected, the handler is
3352 * invoked at the end of turn. 3347 * invoked at the end of turn.
3353 */ 3348 */
3354 V8_DEPRECATE_SOON("Use maybe version of Then", 3349 V8_DEPRECATED("Use maybe version of Then",
3355 Local<Promise> Chain(Local<Function> handler)); 3350 Local<Promise> Chain(Local<Function> handler));
3356 V8_DEPRECATE_SOON("Use Then", 3351 V8_DEPRECATED("Use Then",
3357 V8_WARN_UNUSED_RESULT MaybeLocal<Promise> Chain( 3352 V8_WARN_UNUSED_RESULT MaybeLocal<Promise> Chain(
3358 Local<Context> context, Local<Function> handler)); 3353 Local<Context> context, Local<Function> handler));
3359 3354
3360 V8_DEPRECATE_SOON("Use maybe version", 3355 V8_DEPRECATED("Use maybe version",
3361 Local<Promise> Catch(Local<Function> handler)); 3356 Local<Promise> Catch(Local<Function> handler));
3362 V8_WARN_UNUSED_RESULT MaybeLocal<Promise> Catch(Local<Context> context, 3357 V8_WARN_UNUSED_RESULT MaybeLocal<Promise> Catch(Local<Context> context,
3363 Local<Function> handler); 3358 Local<Function> handler);
3364 3359
3365 V8_DEPRECATE_SOON("Use maybe version", 3360 V8_DEPRECATED("Use maybe version",
3366 Local<Promise> Then(Local<Function> handler)); 3361 Local<Promise> Then(Local<Function> handler));
3367 V8_WARN_UNUSED_RESULT MaybeLocal<Promise> Then(Local<Context> context, 3362 V8_WARN_UNUSED_RESULT MaybeLocal<Promise> Then(Local<Context> context,
3368 Local<Function> handler); 3363 Local<Function> handler);
3369 3364
3370 /** 3365 /**
3371 * Returns true if the promise has at least one derived promise, and 3366 * Returns true if the promise has at least one derived promise, and
3372 * therefore resolve/reject handlers (including default handler). 3367 * therefore resolve/reject handlers (including default handler).
3373 */ 3368 */
3374 bool HasHandler(); 3369 bool HasHandler();
3375 3370
3376 V8_INLINE static Promise* Cast(Value* obj); 3371 V8_INLINE static Promise* Cast(Value* obj);
(...skipping 1340 matching lines...) Expand 10 before | Expand all | Expand 10 after
4717 * Sets access check callback on the object template and enables access 4712 * Sets access check callback on the object template and enables access
4718 * checks. 4713 * checks.
4719 * 4714 *
4720 * When accessing properties on instances of this object template, 4715 * When accessing properties on instances of this object template,
4721 * the access check callback will be called to determine whether or 4716 * the access check callback will be called to determine whether or
4722 * not to allow cross-context access to the properties. 4717 * not to allow cross-context access to the properties.
4723 */ 4718 */
4724 void SetAccessCheckCallback(AccessCheckCallback callback, 4719 void SetAccessCheckCallback(AccessCheckCallback callback,
4725 Local<Value> data = Local<Value>()); 4720 Local<Value> data = Local<Value>());
4726 4721
4727 V8_DEPRECATE_SOON( 4722 V8_DEPRECATED(
4728 "Use SetAccessCheckCallback instead", 4723 "Use SetAccessCheckCallback instead",
4729 void SetAccessCheckCallbacks(NamedSecurityCallback named_handler, 4724 void SetAccessCheckCallbacks(NamedSecurityCallback named_handler,
4730 IndexedSecurityCallback indexed_handler, 4725 IndexedSecurityCallback indexed_handler,
4731 Local<Value> data = Local<Value>())); 4726 Local<Value> data = Local<Value>()));
4732 4727
4733 /** 4728 /**
4734 * Gets the number of internal fields for objects generated from 4729 * Gets the number of internal fields for objects generated from
4735 * this template. 4730 * this template.
4736 */ 4731 */
4737 int InternalFieldCount(); 4732 int InternalFieldCount();
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after
4918 static Local<Value> SyntaxError(Local<String> message); 4913 static Local<Value> SyntaxError(Local<String> message);
4919 static Local<Value> TypeError(Local<String> message); 4914 static Local<Value> TypeError(Local<String> message);
4920 static Local<Value> Error(Local<String> message); 4915 static Local<Value> Error(Local<String> message);
4921 4916
4922 /** 4917 /**
4923 * Creates an error message for the given exception. 4918 * Creates an error message for the given exception.
4924 * Will try to reconstruct the original stack trace from the exception value, 4919 * Will try to reconstruct the original stack trace from the exception value,
4925 * or capture the current stack trace if not available. 4920 * or capture the current stack trace if not available.
4926 */ 4921 */
4927 static Local<Message> CreateMessage(Isolate* isolate, Local<Value> exception); 4922 static Local<Message> CreateMessage(Isolate* isolate, Local<Value> exception);
4928 V8_DEPRECATE_SOON( 4923 V8_DEPRECATED("Use version with an Isolate*",
4929 "Use version with an Isolate*", 4924 static Local<Message> CreateMessage(Local<Value> exception));
4930 static Local<Message> CreateMessage(Local<Value> exception));
4931 4925
4932 /** 4926 /**
4933 * Returns the original stack trace that was captured at the creation time 4927 * Returns the original stack trace that was captured at the creation time
4934 * of a given exception, or an empty handle if not available. 4928 * of a given exception, or an empty handle if not available.
4935 */ 4929 */
4936 static Local<StackTrace> GetStackTrace(Local<Value> exception); 4930 static Local<StackTrace> GetStackTrace(Local<Value> exception);
4937 }; 4931 };
4938 4932
4939 4933
4940 // --- Counters Callbacks --- 4934 // --- Counters Callbacks ---
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
5040 kGCTypeIncrementalMarking | kGCTypeProcessWeakCallbacks 5034 kGCTypeIncrementalMarking | kGCTypeProcessWeakCallbacks
5041 }; 5035 };
5042 5036
5043 enum GCCallbackFlags { 5037 enum GCCallbackFlags {
5044 kNoGCCallbackFlags = 0, 5038 kNoGCCallbackFlags = 0,
5045 kGCCallbackFlagConstructRetainedObjectInfos = 1 << 1, 5039 kGCCallbackFlagConstructRetainedObjectInfos = 1 << 1,
5046 kGCCallbackFlagForced = 1 << 2, 5040 kGCCallbackFlagForced = 1 << 2,
5047 kGCCallbackFlagSynchronousPhantomCallbackProcessing = 1 << 3 5041 kGCCallbackFlagSynchronousPhantomCallbackProcessing = 1 << 3
5048 }; 5042 };
5049 5043
5050 V8_DEPRECATE_SOON("Use GCCallBack instead",
5051 typedef void (*GCPrologueCallback)(GCType type,
5052 GCCallbackFlags flags));
5053 V8_DEPRECATE_SOON("Use GCCallBack instead",
5054 typedef void (*GCEpilogueCallback)(GCType type,
5055 GCCallbackFlags flags));
5056 typedef void (*GCCallback)(GCType type, GCCallbackFlags flags); 5044 typedef void (*GCCallback)(GCType type, GCCallbackFlags flags);
5057 5045
5058 typedef void (*InterruptCallback)(Isolate* isolate, void* data); 5046 typedef void (*InterruptCallback)(Isolate* isolate, void* data);
5059 5047
5060 5048
5061 /** 5049 /**
5062 * Collection of V8 heap information. 5050 * Collection of V8 heap information.
5063 * 5051 *
5064 * Instances of this class can be passed to v8::V8::HeapStatistics to 5052 * Instances of this class can be passed to v8::V8::HeapStatistics to
5065 * get heap statistics from V8. 5053 * get heap statistics from V8.
(...skipping 589 matching lines...) Expand 10 before | Expand all | Expand 10 after
5655 5643
5656 /** 5644 /**
5657 * Allows the host application to declare implicit references from an object 5645 * Allows the host application to declare implicit references from an object
5658 * to another object. If the parent object is alive, the child object is alive 5646 * to another object. If the parent object is alive, the child object is alive
5659 * too. After each garbage collection, all implicit references are removed. It 5647 * too. After each garbage collection, all implicit references are removed. It
5660 * is intended to be used in the before-garbage-collection callback function. 5648 * is intended to be used in the before-garbage-collection callback function.
5661 */ 5649 */
5662 template<typename T, typename S> 5650 template<typename T, typename S>
5663 void SetReference(const Persistent<T>& parent, const Persistent<S>& child); 5651 void SetReference(const Persistent<T>& parent, const Persistent<S>& child);
5664 5652
5665 V8_DEPRECATE_SOON("Use GCCallBack instead",
5666 typedef void (*GCPrologueCallback)(Isolate* isolate,
5667 GCType type,
5668 GCCallbackFlags flags));
5669 V8_DEPRECATE_SOON("Use GCCallBack instead",
5670 typedef void (*GCEpilogueCallback)(Isolate* isolate,
5671 GCType type,
5672 GCCallbackFlags flags));
5673 typedef void (*GCCallback)(Isolate* isolate, GCType type, 5653 typedef void (*GCCallback)(Isolate* isolate, GCType type,
5674 GCCallbackFlags flags); 5654 GCCallbackFlags flags);
5675 5655
5676 /** 5656 /**
5677 * Enables the host application to receive a notification before a 5657 * Enables the host application to receive a notification before a
5678 * garbage collection. Allocations are allowed in the callback function, 5658 * garbage collection. Allocations are allowed in the callback function,
5679 * but the callback is not re-entrant: if the allocation inside it will 5659 * but the callback is not re-entrant: if the allocation inside it will
5680 * trigger the garbage collection, the callback won't be called again. 5660 * trigger the garbage collection, the callback won't be called again.
5681 * It is possible to specify the GCType filter for your callback. But it is 5661 * It is possible to specify the GCType filter for your callback. But it is
5682 * not possible to register the same callback function two times with 5662 * not possible to register the same callback function two times with
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after
5849 * as much cleanup as it will be able to do. 5829 * as much cleanup as it will be able to do.
5850 * 5830 *
5851 * The deadline_in_seconds argument specifies the deadline V8 has to finish 5831 * The deadline_in_seconds argument specifies the deadline V8 has to finish
5852 * garbage collection work. deadline_in_seconds is compared with 5832 * garbage collection work. deadline_in_seconds is compared with
5853 * MonotonicallyIncreasingTime() and should be based on the same timebase as 5833 * MonotonicallyIncreasingTime() and should be based on the same timebase as
5854 * that function. There is no guarantee that the actual work will be done 5834 * that function. There is no guarantee that the actual work will be done
5855 * within the time limit. 5835 * within the time limit.
5856 */ 5836 */
5857 bool IdleNotificationDeadline(double deadline_in_seconds); 5837 bool IdleNotificationDeadline(double deadline_in_seconds);
5858 5838
5859 V8_DEPRECATE_SOON("use IdleNotificationDeadline()", 5839 V8_DEPRECATED("use IdleNotificationDeadline()",
5860 bool IdleNotification(int idle_time_in_ms)); 5840 bool IdleNotification(int idle_time_in_ms));
5861 5841
5862 /** 5842 /**
5863 * Optional notification that the system is running low on memory. 5843 * Optional notification that the system is running low on memory.
5864 * V8 uses these notifications to attempt to free memory. 5844 * V8 uses these notifications to attempt to free memory.
5865 */ 5845 */
5866 void LowMemoryNotification(); 5846 void LowMemoryNotification();
5867 5847
5868 /** 5848 /**
5869 * Optional notification that a context has been disposed. V8 uses 5849 * Optional notification that a context has been disposed. V8 uses
5870 * these notifications to guide the GC heuristic. Returns the number 5850 * these notifications to guide the GC heuristic. Returns the number
(...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after
6071 typedef uintptr_t (*ReturnAddressLocationResolver)( 6051 typedef uintptr_t (*ReturnAddressLocationResolver)(
6072 uintptr_t return_addr_location); 6052 uintptr_t return_addr_location);
6073 6053
6074 6054
6075 /** 6055 /**
6076 * Container class for static utility functions. 6056 * Container class for static utility functions.
6077 */ 6057 */
6078 class V8_EXPORT V8 { 6058 class V8_EXPORT V8 {
6079 public: 6059 public:
6080 /** Set the callback to invoke in case of fatal errors. */ 6060 /** Set the callback to invoke in case of fatal errors. */
6081 V8_INLINE static V8_DEPRECATE_SOON( 6061 V8_INLINE static V8_DEPRECATED(
6082 "Use isolate version", 6062 "Use isolate version",
6083 void SetFatalErrorHandler(FatalErrorCallback that)); 6063 void SetFatalErrorHandler(FatalErrorCallback that));
6084 6064
6085 /** 6065 /**
6086 * Set the callback to invoke to check if code generation from 6066 * Set the callback to invoke to check if code generation from
6087 * strings should be allowed. 6067 * strings should be allowed.
6088 */ 6068 */
6089 V8_INLINE static V8_DEPRECATE_SOON( 6069 V8_INLINE static V8_DEPRECATED(
6090 "Use isolate version", void SetAllowCodeGenerationFromStringsCallback( 6070 "Use isolate version", void SetAllowCodeGenerationFromStringsCallback(
6091 AllowCodeGenerationFromStringsCallback that)); 6071 AllowCodeGenerationFromStringsCallback that));
6092 6072
6093 /** 6073 /**
6094 * Check if V8 is dead and therefore unusable. This is the case after 6074 * Check if V8 is dead and therefore unusable. This is the case after
6095 * fatal errors such as out-of-memory situations. 6075 * fatal errors such as out-of-memory situations.
6096 */ 6076 */
6097 V8_INLINE static V8_DEPRECATE_SOON("no alternative", bool IsDead()); 6077 V8_INLINE static V8_DEPRECATED("Use isolate version", bool IsDead());
6098 6078
6099 /** 6079 /**
6100 * Hand startup data to V8, in case the embedder has chosen to build 6080 * Hand startup data to V8, in case the embedder has chosen to build
6101 * V8 with external startup data. 6081 * V8 with external startup data.
6102 * 6082 *
6103 * Note: 6083 * Note:
6104 * - By default the startup data is linked into the V8 library, in which 6084 * - By default the startup data is linked into the V8 library, in which
6105 * case this function is not meaningful. 6085 * case this function is not meaningful.
6106 * - If this needs to be called, it needs to be called before V8 6086 * - If this needs to be called, it needs to be called before V8
6107 * tries to make use of its built-ins. 6087 * tries to make use of its built-ins.
(...skipping 15 matching lines...) Expand all
6123 6103
6124 /** 6104 /**
6125 * Adds a message listener. 6105 * Adds a message listener.
6126 * 6106 *
6127 * The same message listener can be added more than once and in that 6107 * The same message listener can be added more than once and in that
6128 * case it will be called more than once for each message. 6108 * case it will be called more than once for each message.
6129 * 6109 *
6130 * If data is specified, it will be passed to the callback when it is called. 6110 * If data is specified, it will be passed to the callback when it is called.
6131 * Otherwise, the exception object will be passed to the callback instead. 6111 * Otherwise, the exception object will be passed to the callback instead.
6132 */ 6112 */
6133 V8_INLINE static V8_DEPRECATE_SOON( 6113 V8_INLINE static V8_DEPRECATED(
6134 "Use isolate version", 6114 "Use isolate version",
6135 bool AddMessageListener(MessageCallback that, 6115 bool AddMessageListener(MessageCallback that,
6136 Local<Value> data = Local<Value>())); 6116 Local<Value> data = Local<Value>()));
6137 6117
6138 /** 6118 /**
6139 * Remove all message listeners from the specified callback function. 6119 * Remove all message listeners from the specified callback function.
6140 */ 6120 */
6141 V8_INLINE static V8_DEPRECATE_SOON( 6121 V8_INLINE static V8_DEPRECATED(
6142 "Use isolate version", void RemoveMessageListeners(MessageCallback that)); 6122 "Use isolate version", void RemoveMessageListeners(MessageCallback that));
6143 6123
6144 /** 6124 /**
6145 * Tells V8 to capture current stack trace when uncaught exception occurs 6125 * Tells V8 to capture current stack trace when uncaught exception occurs
6146 * and report it to the message listeners. The option is off by default. 6126 * and report it to the message listeners. The option is off by default.
6147 */ 6127 */
6148 V8_INLINE static V8_DEPRECATE_SOON( 6128 V8_INLINE static V8_DEPRECATED(
6149 "Use isolate version", 6129 "Use isolate version",
6150 void SetCaptureStackTraceForUncaughtExceptions( 6130 void SetCaptureStackTraceForUncaughtExceptions(
6151 bool capture, int frame_limit = 10, 6131 bool capture, int frame_limit = 10,
6152 StackTrace::StackTraceOptions options = StackTrace::kOverview)); 6132 StackTrace::StackTraceOptions options = StackTrace::kOverview));
6153 6133
6154 /** 6134 /**
6155 * Sets V8 flags from a string. 6135 * Sets V8 flags from a string.
6156 */ 6136 */
6157 static void SetFlagsFromString(const char* str, int length); 6137 static void SetFlagsFromString(const char* str, int length);
6158 6138
6159 /** 6139 /**
6160 * Sets V8 flags from the command line. 6140 * Sets V8 flags from the command line.
6161 */ 6141 */
6162 static void SetFlagsFromCommandLine(int* argc, 6142 static void SetFlagsFromCommandLine(int* argc,
6163 char** argv, 6143 char** argv,
6164 bool remove_flags); 6144 bool remove_flags);
6165 6145
6166 /** Get the version string. */ 6146 /** Get the version string. */
6167 static const char* GetVersion(); 6147 static const char* GetVersion();
6168 6148
6169 /** Callback function for reporting failed access checks.*/ 6149 /** Callback function for reporting failed access checks.*/
6170 V8_INLINE static V8_DEPRECATE_SOON( 6150 V8_INLINE static V8_DEPRECATED(
6171 "Use isolate version", 6151 "Use isolate version",
6172 void SetFailedAccessCheckCallbackFunction(FailedAccessCheckCallback)); 6152 void SetFailedAccessCheckCallbackFunction(FailedAccessCheckCallback));
6173 6153
6174 /** 6154 /**
6175 * Enables the host application to receive a notification before a 6155 * Enables the host application to receive a notification before a
6176 * garbage collection. Allocations are not allowed in the 6156 * garbage collection. Allocations are not allowed in the
6177 * callback function, you therefore cannot manipulate objects (set 6157 * callback function, you therefore cannot manipulate objects (set
6178 * or delete properties for example) since it is possible such 6158 * or delete properties for example) since it is possible such
6179 * operations will result in the allocation of objects. It is possible 6159 * operations will result in the allocation of objects. It is possible
6180 * to specify the GCType filter for your callback. But it is not possible to 6160 * to specify the GCType filter for your callback. But it is not possible to
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
6214 * AddGCEpilogueCallback function. 6194 * AddGCEpilogueCallback function.
6215 */ 6195 */
6216 V8_INLINE static V8_DEPRECATED( 6196 V8_INLINE static V8_DEPRECATED(
6217 "Use isolate version", 6197 "Use isolate version",
6218 void RemoveGCEpilogueCallback(GCCallback callback)); 6198 void RemoveGCEpilogueCallback(GCCallback callback));
6219 6199
6220 /** 6200 /**
6221 * Enables the host application to provide a mechanism to be notified 6201 * Enables the host application to provide a mechanism to be notified
6222 * and perform custom logging when V8 Allocates Executable Memory. 6202 * and perform custom logging when V8 Allocates Executable Memory.
6223 */ 6203 */
6224 V8_INLINE static V8_DEPRECATE_SOON( 6204 V8_INLINE static V8_DEPRECATED(
6225 "Use isolate version", 6205 "Use isolate version",
6226 void AddMemoryAllocationCallback(MemoryAllocationCallback callback, 6206 void AddMemoryAllocationCallback(MemoryAllocationCallback callback,
6227 ObjectSpace space, 6207 ObjectSpace space,
6228 AllocationAction action)); 6208 AllocationAction action));
6229 6209
6230 /** 6210 /**
6231 * Removes callback that was installed by AddMemoryAllocationCallback. 6211 * Removes callback that was installed by AddMemoryAllocationCallback.
6232 */ 6212 */
6233 V8_INLINE static V8_DEPRECATE_SOON( 6213 V8_INLINE static V8_DEPRECATED(
6234 "Use isolate version", 6214 "Use isolate version",
6235 void RemoveMemoryAllocationCallback(MemoryAllocationCallback callback)); 6215 void RemoveMemoryAllocationCallback(MemoryAllocationCallback callback));
6236 6216
6237 /** 6217 /**
6238 * Initializes V8. This function needs to be called before the first Isolate 6218 * Initializes V8. This function needs to be called before the first Isolate
6239 * is created. It always returns true. 6219 * is created. It always returns true.
6240 */ 6220 */
6241 static bool Initialize(); 6221 static bool Initialize();
6242 6222
6243 /** 6223 /**
(...skipping 11 matching lines...) Expand all
6255 6235
6256 /** 6236 /**
6257 * Forcefully terminate the current thread of JavaScript execution 6237 * Forcefully terminate the current thread of JavaScript execution
6258 * in the given isolate. 6238 * in the given isolate.
6259 * 6239 *
6260 * This method can be used by any thread even if that thread has not 6240 * This method can be used by any thread even if that thread has not
6261 * acquired the V8 lock with a Locker object. 6241 * acquired the V8 lock with a Locker object.
6262 * 6242 *
6263 * \param isolate The isolate in which to terminate the current JS execution. 6243 * \param isolate The isolate in which to terminate the current JS execution.
6264 */ 6244 */
6265 V8_INLINE static V8_DEPRECATE_SOON("Use isolate version", 6245 V8_INLINE static V8_DEPRECATED("Use isolate version",
6266 void TerminateExecution(Isolate* isolate)); 6246 void TerminateExecution(Isolate* isolate));
6267 6247
6268 /** 6248 /**
6269 * Is V8 terminating JavaScript execution. 6249 * Is V8 terminating JavaScript execution.
6270 * 6250 *
6271 * Returns true if JavaScript execution is currently terminating 6251 * Returns true if JavaScript execution is currently terminating
6272 * because of a call to TerminateExecution. In that case there are 6252 * because of a call to TerminateExecution. In that case there are
6273 * still JavaScript frames on the stack and the termination 6253 * still JavaScript frames on the stack and the termination
6274 * exception is still active. 6254 * exception is still active.
6275 * 6255 *
6276 * \param isolate The isolate in which to check. 6256 * \param isolate The isolate in which to check.
6277 */ 6257 */
6278 V8_INLINE static V8_DEPRECATE_SOON( 6258 V8_INLINE static V8_DEPRECATED(
6279 "Use isolate version", 6259 "Use isolate version",
6280 bool IsExecutionTerminating(Isolate* isolate = NULL)); 6260 bool IsExecutionTerminating(Isolate* isolate = NULL));
6281 6261
6282 /** 6262 /**
6283 * Resume execution capability in the given isolate, whose execution 6263 * Resume execution capability in the given isolate, whose execution
6284 * was previously forcefully terminated using TerminateExecution(). 6264 * was previously forcefully terminated using TerminateExecution().
6285 * 6265 *
6286 * When execution is forcefully terminated using TerminateExecution(), 6266 * When execution is forcefully terminated using TerminateExecution(),
6287 * the isolate can not resume execution until all JavaScript frames 6267 * the isolate can not resume execution until all JavaScript frames
6288 * have propagated the uncatchable exception which is generated. This 6268 * have propagated the uncatchable exception which is generated. This
6289 * method allows the program embedding the engine to handle the 6269 * method allows the program embedding the engine to handle the
6290 * termination event and resume execution capability, even if 6270 * termination event and resume execution capability, even if
6291 * JavaScript frames remain on the stack. 6271 * JavaScript frames remain on the stack.
6292 * 6272 *
6293 * This method can be used by any thread even if that thread has not 6273 * This method can be used by any thread even if that thread has not
6294 * acquired the V8 lock with a Locker object. 6274 * acquired the V8 lock with a Locker object.
6295 * 6275 *
6296 * \param isolate The isolate in which to resume execution capability. 6276 * \param isolate The isolate in which to resume execution capability.
6297 */ 6277 */
6298 V8_INLINE static V8_DEPRECATE_SOON( 6278 V8_INLINE static V8_DEPRECATED(
6299 "Use isolate version", void CancelTerminateExecution(Isolate* isolate)); 6279 "Use isolate version", void CancelTerminateExecution(Isolate* isolate));
6300 6280
6301 /** 6281 /**
6302 * Releases any resources used by v8 and stops any utility threads 6282 * Releases any resources used by v8 and stops any utility threads
6303 * that may be running. Note that disposing v8 is permanent, it 6283 * that may be running. Note that disposing v8 is permanent, it
6304 * cannot be reinitialized. 6284 * cannot be reinitialized.
6305 * 6285 *
6306 * It should generally not be necessary to dispose v8 before exiting 6286 * It should generally not be necessary to dispose v8 before exiting
6307 * a process, this should happen automatically. It is only necessary 6287 * a process, this should happen automatically. It is only necessary
6308 * to use if the process needs the resources taken up by v8. 6288 * to use if the process needs the resources taken up by v8.
6309 */ 6289 */
6310 static bool Dispose(); 6290 static bool Dispose();
6311 6291
6312 /** 6292 /**
6313 * Iterates through all external resources referenced from current isolate 6293 * Iterates through all external resources referenced from current isolate
6314 * heap. GC is not invoked prior to iterating, therefore there is no 6294 * heap. GC is not invoked prior to iterating, therefore there is no
6315 * guarantee that visited objects are still alive. 6295 * guarantee that visited objects are still alive.
6316 */ 6296 */
6317 V8_INLINE static V8_DEPRECATE_SOON( 6297 V8_INLINE static V8_DEPRECATED(
6318 "Use isolate version", 6298 "Use isolate version",
6319 void VisitExternalResources(ExternalResourceVisitor* visitor)); 6299 void VisitExternalResources(ExternalResourceVisitor* visitor));
6320 6300
6321 /** 6301 /**
6322 * Iterates through all the persistent handles in the current isolate's heap 6302 * Iterates through all the persistent handles in the current isolate's heap
6323 * that have class_ids. 6303 * that have class_ids.
6324 */ 6304 */
6325 V8_INLINE static V8_DEPRECATE_SOON( 6305 V8_INLINE static V8_DEPRECATED(
6326 "Use isolate version", 6306 "Use isolate version",
6327 void VisitHandlesWithClassIds(PersistentHandleVisitor* visitor)); 6307 void VisitHandlesWithClassIds(PersistentHandleVisitor* visitor));
6328 6308
6329 /** 6309 /**
6330 * Iterates through all the persistent handles in isolate's heap that have 6310 * Iterates through all the persistent handles in isolate's heap that have
6331 * class_ids. 6311 * class_ids.
6332 */ 6312 */
6333 V8_INLINE static V8_DEPRECATE_SOON( 6313 V8_INLINE static V8_DEPRECATED(
6334 "Use isolate version", 6314 "Use isolate version",
6335 void VisitHandlesWithClassIds(Isolate* isolate, 6315 void VisitHandlesWithClassIds(Isolate* isolate,
6336 PersistentHandleVisitor* visitor)); 6316 PersistentHandleVisitor* visitor));
6337 6317
6338 /** 6318 /**
6339 * Iterates through all the persistent handles in the current isolate's heap 6319 * Iterates through all the persistent handles in the current isolate's heap
6340 * that have class_ids and are candidates to be marked as partially dependent 6320 * that have class_ids and are candidates to be marked as partially dependent
6341 * handles. This will visit handles to young objects created since the last 6321 * handles. This will visit handles to young objects created since the last
6342 * garbage collection but is free to visit an arbitrary superset of these 6322 * garbage collection but is free to visit an arbitrary superset of these
6343 * objects. 6323 * objects.
6344 */ 6324 */
6345 V8_INLINE static V8_DEPRECATE_SOON( 6325 V8_INLINE static V8_DEPRECATED(
6346 "Use isolate version", 6326 "Use isolate version",
6347 void VisitHandlesForPartialDependence(Isolate* isolate, 6327 void VisitHandlesForPartialDependence(Isolate* isolate,
6348 PersistentHandleVisitor* visitor)); 6328 PersistentHandleVisitor* visitor));
6349 6329
6350 /** 6330 /**
6351 * Initialize the ICU library bundled with V8. The embedder should only 6331 * Initialize the ICU library bundled with V8. The embedder should only
6352 * invoke this method when using the bundled ICU. Returns true on success. 6332 * invoke this method when using the bundled ICU. Returns true on success.
6353 * 6333 *
6354 * If V8 was compiled with the ICU data in an external file, the location 6334 * If V8 was compiled with the ICU data in an external file, the location
6355 * of the data file has to be provided. 6335 * of the data file has to be provided.
(...skipping 2127 matching lines...) Expand 10 before | Expand all | Expand 10 after
8483 */ 8463 */
8484 8464
8485 8465
8486 } // namespace v8 8466 } // namespace v8
8487 8467
8488 8468
8489 #undef TYPE_CHECK 8469 #undef TYPE_CHECK
8490 8470
8491 8471
8492 #endif // INCLUDE_V8_H_ 8472 #endif // INCLUDE_V8_H_
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698