summaryrefslogtreecommitdiff
path: root/chromium/v8/include/v8.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/v8/include/v8.h')
-rw-r--r--chromium/v8/include/v8.h246
1 files changed, 100 insertions, 146 deletions
diff --git a/chromium/v8/include/v8.h b/chromium/v8/include/v8.h
index 3252602bcf1..3eb4794f5c6 100644
--- a/chromium/v8/include/v8.h
+++ b/chromium/v8/include/v8.h
@@ -40,9 +40,6 @@
#include "v8stdint.h"
-// We reserve the V8_* prefix for macros defined in V8 public API and
-// assume there are no name conflicts with the embedder's code.
-
#ifdef _WIN32
// Setup for Windows DLL export/import. When building the V8 DLL the
@@ -56,11 +53,11 @@
#endif
#ifdef BUILDING_V8_SHARED
-#define V8_EXPORT __declspec(dllexport)
+#define V8EXPORT __declspec(dllexport)
#elif USING_V8_SHARED
-#define V8_EXPORT __declspec(dllimport)
+#define V8EXPORT __declspec(dllimport)
#else
-#define V8_EXPORT
+#define V8EXPORT
#endif // BUILDING_V8_SHARED
#else // _WIN32
@@ -69,12 +66,12 @@
#if defined(__GNUC__) && ((__GNUC__ >= 4) || \
(__GNUC__ == 3 && __GNUC_MINOR__ >= 3)) && defined(V8_SHARED)
#ifdef BUILDING_V8_SHARED
-#define V8_EXPORT __attribute__ ((visibility("default")))
+#define V8EXPORT __attribute__ ((visibility("default")))
#else
-#define V8_EXPORT
+#define V8EXPORT
#endif
#else
-#define V8_EXPORT
+#define V8EXPORT
#endif
#endif // _WIN32
@@ -388,11 +385,6 @@ template <class T> class Handle {
};
-// A value which will never be returned by Local::Eternalize
-// Useful for static initialization
-const int kUninitializedEternalIndex = -1;
-
-
/**
* A light-weight stack-allocated object handle. All operations
* that return objects from within v8 return them in local handles. They
@@ -438,11 +430,6 @@ template <class T> class Local : public Handle<T> {
return Local<S>::Cast(*this);
}
- // Keep this Local alive for the lifetime of the Isolate.
- // It remains retrievable via the returned index,
- V8_INLINE(int Eternalize(Isolate* isolate));
- V8_INLINE(static Local<T> GetEternal(Isolate* isolate, int index));
-
/**
* Create a local handle for the content of another handle.
* The referee is kept alive by the local handle even when
@@ -814,7 +801,7 @@ template <class T> class Persistent // NOLINT
* handle and may deallocate it. The behavior of accessing a handle
* for which the handle scope has been deleted is undefined.
*/
-class V8_EXPORT HandleScope {
+class V8EXPORT HandleScope {
public:
// TODO(svenpanne) Deprecate me when Chrome is fixed!
HandleScope();
@@ -853,7 +840,7 @@ class V8_EXPORT HandleScope {
// This Data class is accessible internally as HandleScopeData through a
// typedef in the ImplementationUtilities class.
- class V8_EXPORT Data {
+ class V8EXPORT Data {
public:
internal::Object** next;
internal::Object** limit;
@@ -886,7 +873,7 @@ class V8_EXPORT HandleScope {
/**
* The superclass of values and API object templates.
*/
-class V8_EXPORT Data {
+class V8EXPORT Data {
private:
Data();
};
@@ -898,7 +885,7 @@ class V8_EXPORT Data {
* compiling it, and can be stored between compilations. When script
* data is given to the compile method compilation will be faster.
*/
-class V8_EXPORT ScriptData { // NOLINT
+class V8EXPORT ScriptData { // NOLINT
public:
virtual ~ScriptData() { }
@@ -976,7 +963,7 @@ class ScriptOrigin {
/**
* A compiled JavaScript script.
*/
-class V8_EXPORT Script {
+class V8EXPORT Script {
public:
/**
* Compiles the specified script (context-independent).
@@ -1094,7 +1081,7 @@ class V8_EXPORT Script {
/**
* An error message.
*/
-class V8_EXPORT Message {
+class V8EXPORT Message {
public:
Local<String> Get() const;
Local<String> GetSourceLine() const;
@@ -1166,7 +1153,7 @@ class V8_EXPORT Message {
* snapshot of the execution stack and the information remains valid after
* execution continues.
*/
-class V8_EXPORT StackTrace {
+class V8EXPORT StackTrace {
public:
/**
* Flags that determine what information is placed captured for each
@@ -1215,7 +1202,7 @@ class V8_EXPORT StackTrace {
/**
* A single JavaScript stack frame.
*/
-class V8_EXPORT StackFrame {
+class V8EXPORT StackFrame {
public:
/**
* Returns the number, 1-based, of the line for the associate function call.
@@ -1267,29 +1254,13 @@ class V8_EXPORT StackFrame {
};
-/**
- * A JSON Parser.
- */
-class V8_EXPORT JSON {
- public:
- /**
- * Tries to parse the string |json_string| and returns it as value if
- * successful.
- *
- * \param json_string The string to parse.
- * \return The corresponding value if successfully parsed.
- */
- static Local<Value> Parse(Local<String> json_string);
-};
-
-
// --- Value ---
/**
* The superclass of all JavaScript values and objects.
*/
-class V8_EXPORT Value : public Data {
+class V8EXPORT Value : public Data {
public:
/**
* Returns true if this value is the undefined value. See ECMA-262
@@ -1520,14 +1491,14 @@ class V8_EXPORT Value : public Data {
/**
* The superclass of primitive values. See ECMA-262 4.3.2.
*/
-class V8_EXPORT Primitive : public Value { };
+class V8EXPORT Primitive : public Value { };
/**
* A primitive boolean value (ECMA-262, 4.3.14). Either the true
* or false value.
*/
-class V8_EXPORT Boolean : public Primitive {
+class V8EXPORT Boolean : public Primitive {
public:
bool Value() const;
V8_INLINE(static Handle<Boolean> New(bool value));
@@ -1537,7 +1508,7 @@ class V8_EXPORT Boolean : public Primitive {
/**
* A JavaScript string value (ECMA-262, 4.3.17).
*/
-class V8_EXPORT String : public Primitive {
+class V8EXPORT String : public Primitive {
public:
enum Encoding {
UNKNOWN_ENCODING = 0x1,
@@ -1643,7 +1614,7 @@ class V8_EXPORT String : public Primitive {
*/
bool IsExternalAscii() const;
- class V8_EXPORT ExternalStringResourceBase { // NOLINT
+ class V8EXPORT ExternalStringResourceBase { // NOLINT
public:
virtual ~ExternalStringResourceBase() {}
@@ -1672,7 +1643,7 @@ class V8_EXPORT String : public Primitive {
* ExternalStringResource to manage the life cycle of the underlying
* buffer. Note that the string data must be immutable.
*/
- class V8_EXPORT ExternalStringResource
+ class V8EXPORT ExternalStringResource
: public ExternalStringResourceBase {
public:
/**
@@ -1706,7 +1677,7 @@ class V8_EXPORT String : public Primitive {
* Use String::New or convert to 16 bit data for non-ASCII.
*/
- class V8_EXPORT ExternalAsciiStringResource
+ class V8EXPORT ExternalAsciiStringResource
: public ExternalStringResourceBase {
public:
/**
@@ -1859,7 +1830,7 @@ class V8_EXPORT String : public Primitive {
* then the length() method returns 0 and the * operator returns
* NULL.
*/
- class V8_EXPORT Utf8Value {
+ class V8EXPORT Utf8Value {
public:
explicit Utf8Value(Handle<v8::Value> obj);
~Utf8Value();
@@ -1882,7 +1853,7 @@ class V8_EXPORT String : public Primitive {
* method of the object) then the length() method returns 0 and the * operator
* returns NULL.
*/
- class V8_EXPORT AsciiValue {
+ class V8EXPORT AsciiValue {
public:
// TODO(dcarney): deprecate
explicit AsciiValue(Handle<v8::Value> obj);
@@ -1905,7 +1876,7 @@ class V8_EXPORT String : public Primitive {
* method of the object) then the length() method returns 0 and the * operator
* returns NULL.
*/
- class V8_EXPORT Value {
+ class V8EXPORT Value {
public:
explicit Value(Handle<v8::Value> obj);
~Value();
@@ -1934,7 +1905,7 @@ class V8_EXPORT String : public Primitive {
*
* This is an experimental feature. Use at your own risk.
*/
-class V8_EXPORT Symbol : public Primitive {
+class V8EXPORT Symbol : public Primitive {
public:
// Returns the print name string of the symbol, or undefined if none.
Local<Value> Name() const;
@@ -1955,7 +1926,7 @@ class V8_EXPORT Symbol : public Primitive {
/**
* A JavaScript number value (ECMA-262, 4.3.20)
*/
-class V8_EXPORT Number : public Primitive {
+class V8EXPORT Number : public Primitive {
public:
double Value() const;
static Local<Number> New(double value);
@@ -1970,7 +1941,7 @@ class V8_EXPORT Number : public Primitive {
/**
* A JavaScript value representing a signed integer.
*/
-class V8_EXPORT Integer : public Number {
+class V8EXPORT Integer : public Number {
public:
static Local<Integer> New(int32_t value);
static Local<Integer> NewFromUnsigned(uint32_t value);
@@ -1987,7 +1958,7 @@ class V8_EXPORT Integer : public Number {
/**
* A JavaScript value representing a 32-bit signed integer.
*/
-class V8_EXPORT Int32 : public Integer {
+class V8EXPORT Int32 : public Integer {
public:
int32_t Value() const;
private:
@@ -1998,7 +1969,7 @@ class V8_EXPORT Int32 : public Integer {
/**
* A JavaScript value representing a 32-bit unsigned integer.
*/
-class V8_EXPORT Uint32 : public Integer {
+class V8EXPORT Uint32 : public Integer {
public:
uint32_t Value() const;
private:
@@ -2070,7 +2041,7 @@ enum AccessControl {
/**
* A JavaScript object (ECMA-262, 4.3.3)
*/
-class V8_EXPORT Object : public Value {
+class V8EXPORT Object : public Value {
public:
bool Set(Handle<Value> key,
Handle<Value> value,
@@ -2342,7 +2313,7 @@ class V8_EXPORT Object : public Value {
/**
* An instance of the built-in array constructor (ECMA-262, 15.4.2).
*/
-class V8_EXPORT Array : public Object {
+class V8EXPORT Array : public Object {
public:
uint32_t Length() const;
@@ -2368,7 +2339,7 @@ class V8_EXPORT Array : public Object {
/**
* A JavaScript function object (ECMA-262, 15.3).
*/
-class V8_EXPORT Function : public Object {
+class V8EXPORT Function : public Object {
public:
Local<Object> NewInstance() const;
Local<Object> NewInstance(int argc, Handle<Value> argv[]) const;
@@ -2424,7 +2395,7 @@ class V8_EXPORT Function : public Object {
* An instance of the built-in ArrayBuffer constructor (ES6 draft 15.13.5).
* This API is experimental and may change significantly.
*/
-class V8_EXPORT ArrayBuffer : public Object {
+class V8EXPORT ArrayBuffer : public Object {
public:
/**
* Allocator that V8 uses to allocate |ArrayBuffer|'s memory.
@@ -2433,7 +2404,7 @@ class V8_EXPORT ArrayBuffer : public Object {
*
* This API is experimental and may change significantly.
*/
- class V8_EXPORT Allocator { // NOLINT
+ class V8EXPORT Allocator { // NOLINT
public:
virtual ~Allocator() {}
@@ -2480,7 +2451,7 @@ class V8_EXPORT ArrayBuffer : public Object {
*
* This API is experimental and may change significantly.
*/
- class V8_EXPORT Contents { // NOLINT
+ class V8EXPORT Contents { // NOLINT
public:
Contents() : data_(NULL), byte_length_(0) {}
@@ -2563,7 +2534,7 @@ class V8_EXPORT ArrayBuffer : public Object {
*
* This API is experimental and may change significantly.
*/
-class V8_EXPORT ArrayBufferView : public Object {
+class V8EXPORT ArrayBufferView : public Object {
public:
/**
* Returns underlying ArrayBuffer.
@@ -2598,7 +2569,7 @@ class V8_EXPORT ArrayBufferView : public Object {
* (ES6 draft 15.13.6).
* This API is experimental and may change significantly.
*/
-class V8_EXPORT TypedArray : public ArrayBufferView {
+class V8EXPORT TypedArray : public ArrayBufferView {
public:
/**
* Number of elements in this typed array
@@ -2618,7 +2589,7 @@ class V8_EXPORT TypedArray : public ArrayBufferView {
* An instance of Uint8Array constructor (ES6 draft 15.13.6).
* This API is experimental and may change significantly.
*/
-class V8_EXPORT Uint8Array : public TypedArray {
+class V8EXPORT Uint8Array : public TypedArray {
public:
static Local<Uint8Array> New(Handle<ArrayBuffer> array_buffer,
size_t byte_offset, size_t length);
@@ -2634,7 +2605,7 @@ class V8_EXPORT Uint8Array : public TypedArray {
* An instance of Uint8ClampedArray constructor (ES6 draft 15.13.6).
* This API is experimental and may change significantly.
*/
-class V8_EXPORT Uint8ClampedArray : public TypedArray {
+class V8EXPORT Uint8ClampedArray : public TypedArray {
public:
static Local<Uint8ClampedArray> New(Handle<ArrayBuffer> array_buffer,
size_t byte_offset, size_t length);
@@ -2649,7 +2620,7 @@ class V8_EXPORT Uint8ClampedArray : public TypedArray {
* An instance of Int8Array constructor (ES6 draft 15.13.6).
* This API is experimental and may change significantly.
*/
-class V8_EXPORT Int8Array : public TypedArray {
+class V8EXPORT Int8Array : public TypedArray {
public:
static Local<Int8Array> New(Handle<ArrayBuffer> array_buffer,
size_t byte_offset, size_t length);
@@ -2665,7 +2636,7 @@ class V8_EXPORT Int8Array : public TypedArray {
* An instance of Uint16Array constructor (ES6 draft 15.13.6).
* This API is experimental and may change significantly.
*/
-class V8_EXPORT Uint16Array : public TypedArray {
+class V8EXPORT Uint16Array : public TypedArray {
public:
static Local<Uint16Array> New(Handle<ArrayBuffer> array_buffer,
size_t byte_offset, size_t length);
@@ -2681,7 +2652,7 @@ class V8_EXPORT Uint16Array : public TypedArray {
* An instance of Int16Array constructor (ES6 draft 15.13.6).
* This API is experimental and may change significantly.
*/
-class V8_EXPORT Int16Array : public TypedArray {
+class V8EXPORT Int16Array : public TypedArray {
public:
static Local<Int16Array> New(Handle<ArrayBuffer> array_buffer,
size_t byte_offset, size_t length);
@@ -2697,7 +2668,7 @@ class V8_EXPORT Int16Array : public TypedArray {
* An instance of Uint32Array constructor (ES6 draft 15.13.6).
* This API is experimental and may change significantly.
*/
-class V8_EXPORT Uint32Array : public TypedArray {
+class V8EXPORT Uint32Array : public TypedArray {
public:
static Local<Uint32Array> New(Handle<ArrayBuffer> array_buffer,
size_t byte_offset, size_t length);
@@ -2713,7 +2684,7 @@ class V8_EXPORT Uint32Array : public TypedArray {
* An instance of Int32Array constructor (ES6 draft 15.13.6).
* This API is experimental and may change significantly.
*/
-class V8_EXPORT Int32Array : public TypedArray {
+class V8EXPORT Int32Array : public TypedArray {
public:
static Local<Int32Array> New(Handle<ArrayBuffer> array_buffer,
size_t byte_offset, size_t length);
@@ -2729,7 +2700,7 @@ class V8_EXPORT Int32Array : public TypedArray {
* An instance of Float32Array constructor (ES6 draft 15.13.6).
* This API is experimental and may change significantly.
*/
-class V8_EXPORT Float32Array : public TypedArray {
+class V8EXPORT Float32Array : public TypedArray {
public:
static Local<Float32Array> New(Handle<ArrayBuffer> array_buffer,
size_t byte_offset, size_t length);
@@ -2745,7 +2716,7 @@ class V8_EXPORT Float32Array : public TypedArray {
* An instance of Float64Array constructor (ES6 draft 15.13.6).
* This API is experimental and may change significantly.
*/
-class V8_EXPORT Float64Array : public TypedArray {
+class V8EXPORT Float64Array : public TypedArray {
public:
static Local<Float64Array> New(Handle<ArrayBuffer> array_buffer,
size_t byte_offset, size_t length);
@@ -2761,7 +2732,7 @@ class V8_EXPORT Float64Array : public TypedArray {
* An instance of DataView constructor (ES6 draft 15.13.7).
* This API is experimental and may change significantly.
*/
-class V8_EXPORT DataView : public ArrayBufferView {
+class V8EXPORT DataView : public ArrayBufferView {
public:
static Local<DataView> New(Handle<ArrayBuffer> array_buffer,
size_t byte_offset, size_t length);
@@ -2776,7 +2747,7 @@ class V8_EXPORT DataView : public ArrayBufferView {
/**
* An instance of the built-in Date constructor (ECMA-262, 15.9).
*/
-class V8_EXPORT Date : public Object {
+class V8EXPORT Date : public Object {
public:
static Local<Value> New(double time);
@@ -2814,7 +2785,7 @@ class V8_EXPORT Date : public Object {
/**
* A Number object (ECMA-262, 4.3.21).
*/
-class V8_EXPORT NumberObject : public Object {
+class V8EXPORT NumberObject : public Object {
public:
static Local<Value> New(double value);
@@ -2837,7 +2808,7 @@ class V8_EXPORT NumberObject : public Object {
/**
* A Boolean object (ECMA-262, 4.3.15).
*/
-class V8_EXPORT BooleanObject : public Object {
+class V8EXPORT BooleanObject : public Object {
public:
static Local<Value> New(bool value);
@@ -2860,7 +2831,7 @@ class V8_EXPORT BooleanObject : public Object {
/**
* A String object (ECMA-262, 4.3.18).
*/
-class V8_EXPORT StringObject : public Object {
+class V8EXPORT StringObject : public Object {
public:
static Local<Value> New(Handle<String> value);
@@ -2885,7 +2856,7 @@ class V8_EXPORT StringObject : public Object {
*
* This is an experimental feature. Use at your own risk.
*/
-class V8_EXPORT SymbolObject : public Object {
+class V8EXPORT SymbolObject : public Object {
public:
static Local<Value> New(Isolate* isolate, Handle<Symbol> value);
@@ -2908,7 +2879,7 @@ class V8_EXPORT SymbolObject : public Object {
/**
* An instance of the built-in RegExp constructor (ECMA-262, 15.10).
*/
-class V8_EXPORT RegExp : public Object {
+class V8EXPORT RegExp : public Object {
public:
/**
* Regular expression flag bits. They can be or'ed to enable a set
@@ -2955,7 +2926,7 @@ class V8_EXPORT RegExp : public Object {
* A JavaScript value that wraps a C++ void*. This type of value is mainly used
* to associate C++ data structures with JavaScript objects.
*/
-class V8_EXPORT External : public Value {
+class V8EXPORT External : public Value {
public:
static Local<External> New(void* value);
V8_INLINE(static External* Cast(Value* obj));
@@ -2971,7 +2942,7 @@ class V8_EXPORT External : public Value {
/**
* The superclass of object and function templates.
*/
-class V8_EXPORT Template : public Data {
+class V8EXPORT Template : public Data {
public:
/** Adds a property to each instance created by this template.*/
void Set(Handle<String> name, Handle<Data> value,
@@ -3059,7 +3030,7 @@ class FunctionCallbackInfo {
};
-class V8_EXPORT Arguments : public FunctionCallbackInfo<Value> {
+class V8EXPORT Arguments : public FunctionCallbackInfo<Value> {
private:
friend class internal::FunctionCallbackArguments;
V8_INLINE(Arguments(internal::Object** implicit_args,
@@ -3100,7 +3071,7 @@ class PropertyCallbackInfo {
};
-class V8_EXPORT AccessorInfo : public PropertyCallbackInfo<Value> {
+class V8EXPORT AccessorInfo : public PropertyCallbackInfo<Value> {
private:
friend class internal::PropertyCallbackArguments;
V8_INLINE(AccessorInfo(internal::Object** args))
@@ -3348,7 +3319,7 @@ typedef bool (*IndexedSecurityCallback)(Local<Object> host,
* child_instance.instance_property == 3;
* \endcode
*/
-class V8_EXPORT FunctionTemplate : public Template {
+class V8EXPORT FunctionTemplate : public Template {
public:
/** Creates a function template.*/
V8_DEPRECATED(static Local<FunctionTemplate> New(
@@ -3439,7 +3410,7 @@ class V8_EXPORT FunctionTemplate : public Template {
* Properties added to an ObjectTemplate are added to each object
* created from the ObjectTemplate.
*/
-class V8_EXPORT ObjectTemplate : public Template {
+class V8EXPORT ObjectTemplate : public Template {
public:
/** Creates an ObjectTemplate. */
static Local<ObjectTemplate> New();
@@ -3625,7 +3596,7 @@ class V8_EXPORT ObjectTemplate : public Template {
* A Signature specifies which receivers and arguments are valid
* parameters to a function.
*/
-class V8_EXPORT Signature : public Data {
+class V8EXPORT Signature : public Data {
public:
static Local<Signature> New(Handle<FunctionTemplate> receiver =
Handle<FunctionTemplate>(),
@@ -3640,7 +3611,7 @@ class V8_EXPORT Signature : public Data {
* An AccessorSignature specifies which receivers are valid parameters
* to an accessor callback.
*/
-class V8_EXPORT AccessorSignature : public Data {
+class V8EXPORT AccessorSignature : public Data {
public:
static Local<AccessorSignature> New(Handle<FunctionTemplate> receiver =
Handle<FunctionTemplate>());
@@ -3649,13 +3620,13 @@ class V8_EXPORT AccessorSignature : public Data {
};
-class V8_EXPORT DeclaredAccessorDescriptor : public Data {
+class V8EXPORT DeclaredAccessorDescriptor : public Data {
private:
DeclaredAccessorDescriptor();
};
-class V8_EXPORT ObjectOperationDescriptor : public Data {
+class V8EXPORT ObjectOperationDescriptor : public Data {
public:
// This function is not yet stable and should not be used at this time.
static Local<RawOperationDescriptor> NewInternalFieldDereference(
@@ -3675,7 +3646,7 @@ enum DeclaredAccessorDescriptorDataType {
};
-class V8_EXPORT RawOperationDescriptor : public Data {
+class V8EXPORT RawOperationDescriptor : public Data {
public:
Local<DeclaredAccessorDescriptor> NewHandleDereference(Isolate* isolate);
Local<RawOperationDescriptor> NewRawDereference(Isolate* isolate);
@@ -3708,7 +3679,7 @@ class V8_EXPORT RawOperationDescriptor : public Data {
* A utility for determining the type of objects based on the template
* they were constructed from.
*/
-class V8_EXPORT TypeSwitch : public Data {
+class V8EXPORT TypeSwitch : public Data {
public:
static Local<TypeSwitch> New(Handle<FunctionTemplate> type);
static Local<TypeSwitch> New(int argc, Handle<FunctionTemplate> types[]);
@@ -3720,7 +3691,7 @@ class V8_EXPORT TypeSwitch : public Data {
// --- Extensions ---
-class V8_EXPORT ExternalAsciiStringResourceImpl
+class V8EXPORT ExternalAsciiStringResourceImpl
: public String::ExternalAsciiStringResource {
public:
ExternalAsciiStringResourceImpl() : data_(0), length_(0) {}
@@ -3737,7 +3708,7 @@ class V8_EXPORT ExternalAsciiStringResourceImpl
/**
* Ignore
*/
-class V8_EXPORT Extension { // NOLINT
+class V8EXPORT Extension { // NOLINT
public:
// Note that the strings passed into this constructor must live as long
// as the Extension itself.
@@ -3775,13 +3746,13 @@ class V8_EXPORT Extension { // NOLINT
};
-void V8_EXPORT RegisterExtension(Extension* extension);
+void V8EXPORT RegisterExtension(Extension* extension);
/**
* Ignore
*/
-class V8_EXPORT DeclareExtension {
+class V8EXPORT DeclareExtension {
public:
V8_INLINE(DeclareExtension(Extension* extension)) {
RegisterExtension(extension);
@@ -3792,10 +3763,10 @@ class V8_EXPORT DeclareExtension {
// --- Statics ---
-Handle<Primitive> V8_EXPORT Undefined();
-Handle<Primitive> V8_EXPORT Null();
-Handle<Boolean> V8_EXPORT True();
-Handle<Boolean> V8_EXPORT False();
+Handle<Primitive> V8EXPORT Undefined();
+Handle<Primitive> V8EXPORT Null();
+Handle<Boolean> V8EXPORT True();
+Handle<Boolean> V8EXPORT False();
V8_INLINE(Handle<Primitive> Undefined(Isolate* isolate));
V8_INLINE(Handle<Primitive> Null(Isolate* isolate));
@@ -3812,7 +3783,7 @@ V8_INLINE(Handle<Boolean> False(Isolate* isolate));
* setting the stack limit and you must set a non-default stack limit separately
* for each thread.
*/
-class V8_EXPORT ResourceConstraints {
+class V8EXPORT ResourceConstraints {
public:
ResourceConstraints();
int max_young_space_size() const { return max_young_space_size_; }
@@ -3832,7 +3803,7 @@ class V8_EXPORT ResourceConstraints {
};
-bool V8_EXPORT SetResourceConstraints(ResourceConstraints* constraints);
+bool V8EXPORT SetResourceConstraints(ResourceConstraints* constraints);
// --- Exceptions ---
@@ -3850,13 +3821,13 @@ typedef void (*MessageCallback)(Handle<Message> message, Handle<Value> error);
* operation; the caller must return immediately and only after the exception
* has been handled does it become legal to invoke JavaScript operations.
*/
-Handle<Value> V8_EXPORT ThrowException(Handle<Value> exception);
+Handle<Value> V8EXPORT ThrowException(Handle<Value> exception);
/**
* Create new error objects by calling the corresponding error object
* constructor with the message.
*/
-class V8_EXPORT Exception {
+class V8EXPORT Exception {
public:
static Local<Value> RangeError(Handle<String> message);
static Local<Value> ReferenceError(Handle<String> message);
@@ -3950,7 +3921,7 @@ typedef void (*GCCallback)();
* Instances of this class can be passed to v8::V8::HeapStatistics to
* get heap statistics from V8.
*/
-class V8_EXPORT HeapStatistics {
+class V8EXPORT HeapStatistics {
public:
HeapStatistics();
size_t total_heap_size() { return total_heap_size_; }
@@ -3982,13 +3953,13 @@ class RetainedObjectInfo;
* threads. An isolate can be entered by at most one thread at any
* given time. The Locker/Unlocker API must be used to synchronize.
*/
-class V8_EXPORT Isolate {
+class V8EXPORT Isolate {
public:
/**
* Stack-allocated class which sets the isolate for all operations
* executed within a local scope.
*/
- class V8_EXPORT Scope {
+ class V8EXPORT Scope {
public:
explicit Scope(Isolate* isolate) : isolate_(isolate) {
isolate->Enter();
@@ -4136,7 +4107,7 @@ class V8_EXPORT Isolate {
};
-class V8_EXPORT StartupData {
+class V8EXPORT StartupData {
public:
enum CompressionAlgorithm {
kUncompressed,
@@ -4157,7 +4128,7 @@ class V8_EXPORT StartupData {
*
* For an example of the class usage, see the "shell.cc" sample application.
*/
-class V8_EXPORT StartupDataDecompressor { // NOLINT
+class V8EXPORT StartupDataDecompressor { // NOLINT
public:
StartupDataDecompressor();
virtual ~StartupDataDecompressor();
@@ -4301,7 +4272,7 @@ typedef void (*JitCodeEventHandler)(const JitCodeEvent* event);
/**
* Interface for iterating through all external resources in the heap.
*/
-class V8_EXPORT ExternalResourceVisitor { // NOLINT
+class V8EXPORT ExternalResourceVisitor { // NOLINT
public:
virtual ~ExternalResourceVisitor() {}
virtual void VisitExternalString(Handle<String> string) {}
@@ -4311,7 +4282,7 @@ class V8_EXPORT ExternalResourceVisitor { // NOLINT
/**
* Interface for iterating through all the persistent handles in the heap.
*/
-class V8_EXPORT PersistentHandleVisitor { // NOLINT
+class V8EXPORT PersistentHandleVisitor { // NOLINT
public:
virtual ~PersistentHandleVisitor() {}
virtual void VisitPersistentHandle(Persistent<Value>* value,
@@ -4324,7 +4295,7 @@ class V8_EXPORT PersistentHandleVisitor { // NOLINT
* to be modified. Useful when otherwise unsafe handle operations need to
* be performed.
*/
-class V8_EXPORT AssertNoGCScope {
+class V8EXPORT AssertNoGCScope {
#ifndef DEBUG
// TODO(yangguo): remove isolate argument.
V8_INLINE(AssertNoGCScope(Isolate* isolate)) { }
@@ -4340,7 +4311,7 @@ class V8_EXPORT AssertNoGCScope {
/**
* Container class for static utility functions.
*/
-class V8_EXPORT V8 {
+class V8EXPORT V8 {
public:
/** Set the callback to invoke in case of fatal errors. */
static void SetFatalErrorHandler(FatalErrorCallback that);
@@ -4797,9 +4768,6 @@ class V8_EXPORT V8 {
void* data,
RevivableCallback weak_reference_callback);
static void ClearWeak(internal::Object** global_handle);
- static int Eternalize(internal::Isolate* isolate,
- internal::Object** handle);
- static internal::Object** GetEternal(internal::Isolate* isolate, int index);
template <class T> friend class Handle;
template <class T> friend class Local;
@@ -4811,7 +4779,7 @@ class V8_EXPORT V8 {
/**
* An external exception handler.
*/
-class V8_EXPORT TryCatch {
+class V8EXPORT TryCatch {
public:
/**
* Creates a new try/catch block and registers it with v8. Note that
@@ -4944,7 +4912,7 @@ class V8_EXPORT TryCatch {
/**
* Ignore
*/
-class V8_EXPORT ExtensionConfiguration {
+class V8EXPORT ExtensionConfiguration {
public:
ExtensionConfiguration(int name_count, const char* names[])
: name_count_(name_count), names_(names) { }
@@ -4959,7 +4927,7 @@ class V8_EXPORT ExtensionConfiguration {
* A sandboxed execution context with its own set of built-in objects
* and functions.
*/
-class V8_EXPORT Context {
+class V8EXPORT Context {
public:
/**
* Returns the global proxy object or global object itself for
@@ -5244,7 +5212,7 @@ class V8_EXPORT Context {
* // V8 Now no longer locked.
* \endcode
*/
-class V8_EXPORT Unlocker {
+class V8EXPORT Unlocker {
public:
/**
* Initialize Unlocker for a given Isolate.
@@ -5262,7 +5230,7 @@ class V8_EXPORT Unlocker {
};
-class V8_EXPORT Locker {
+class V8EXPORT Locker {
public:
/**
* Initialize Locker for a given Isolate.
@@ -5323,7 +5291,7 @@ struct HeapStatsUpdate;
/**
* An interface for exporting data from V8, using "push" model.
*/
-class V8_EXPORT OutputStream { // NOLINT
+class V8EXPORT OutputStream { // NOLINT
public:
enum OutputEncoding {
kAscii = 0 // 7-bit ASCII.
@@ -5360,7 +5328,7 @@ class V8_EXPORT OutputStream { // NOLINT
* An interface for reporting progress and controlling long-running
* activities.
*/
-class V8_EXPORT ActivityControl { // NOLINT
+class V8EXPORT ActivityControl { // NOLINT
public:
enum ControlOption {
kContinue = 0,
@@ -5483,7 +5451,7 @@ class Internals {
static const int kNullValueRootIndex = 7;
static const int kTrueValueRootIndex = 8;
static const int kFalseValueRootIndex = 9;
- static const int kEmptyStringRootIndex = 133;
+ static const int kEmptyStringRootIndex = 135;
static const int kNodeClassIdOffset = 1 * kApiPointerSize;
static const int kNodeFlagsOffset = 1 * kApiPointerSize + 3;
@@ -5544,14 +5512,14 @@ class Internals {
V8_INLINE(static uint8_t GetNodeFlag(internal::Object** obj, int shift)) {
uint8_t* addr = reinterpret_cast<uint8_t*>(obj) + kNodeFlagsOffset;
- return *addr & static_cast<uint8_t>(1U << shift);
+ return *addr & (1 << shift);
}
V8_INLINE(static void UpdateNodeFlag(internal::Object** obj,
bool value, int shift)) {
uint8_t* addr = reinterpret_cast<uint8_t*>(obj) + kNodeFlagsOffset;
- uint8_t mask = static_cast<uint8_t>(1 << shift);
- *addr = static_cast<uint8_t>((*addr & ~mask) | (value << shift));
+ uint8_t mask = 1 << shift;
+ *addr = (*addr & ~mask) | (value << shift);
}
V8_INLINE(static uint8_t GetNodeState(internal::Object** obj)) {
@@ -5562,7 +5530,7 @@ class Internals {
V8_INLINE(static void UpdateNodeState(internal::Object** obj,
uint8_t value)) {
uint8_t* addr = reinterpret_cast<uint8_t*>(obj) + kNodeFlagsOffset;
- *addr = static_cast<uint8_t>((*addr & ~kNodeStateMask) | value);
+ *addr = (*addr & ~kNodeStateMask) | value;
}
V8_INLINE(static void SetEmbedderData(v8::Isolate* isolate, void* data)) {
@@ -5663,21 +5631,6 @@ Local<T> Local<T>::New(Isolate* isolate, T* that) {
}
-template<class T>
-int Local<T>::Eternalize(Isolate* isolate) {
- return V8::Eternalize(reinterpret_cast<internal::Isolate*>(isolate),
- reinterpret_cast<internal::Object**>(this->val_));
-}
-
-
-template<class T>
-Local<T> Local<T>::GetEternal(Isolate* isolate, int index) {
- internal::Object** handle =
- V8::GetEternal(reinterpret_cast<internal::Isolate*>(isolate), index);
- return Local<T>(T::Cast(reinterpret_cast<Value*>(handle)));
-}
-
-
#ifdef V8_USE_UNSAFE_HANDLES
template <class T>
Persistent<T> Persistent<T>::New(Handle<T> that) {
@@ -5927,7 +5880,7 @@ void ReturnValue<T>::Set(uint32_t i) {
TYPE_CHECK(T, Integer);
typedef internal::Internals I;
// Can't simply use INT32_MAX here for whatever reason.
- bool fits_into_int32_t = (i & (1U << 31)) == 0;
+ bool fits_into_int32_t = (i & (1 << 31)) == 0;
if (V8_LIKELY(fits_into_int32_t)) {
Set(static_cast<int32_t>(i));
return;
@@ -6589,6 +6542,7 @@ void* Context::GetAlignedPointerFromEmbedderData(int index) {
} // namespace v8
+#undef V8EXPORT
#undef TYPE_CHECK