v8.h   v8.h 
skipping to change at line 2778 skipping to change at line 2778
class V8EXPORT HeapStatistics { class V8EXPORT HeapStatistics {
public: public:
HeapStatistics(); HeapStatistics();
size_t total_heap_size() { return total_heap_size_; } size_t total_heap_size() { return total_heap_size_; }
size_t total_heap_size_executable() { return total_heap_size_executable_; } size_t total_heap_size_executable() { return total_heap_size_executable_; }
size_t total_physical_size() { return total_physical_size_; } size_t total_physical_size() { return total_physical_size_; }
size_t used_heap_size() { return used_heap_size_; } size_t used_heap_size() { return used_heap_size_; }
size_t heap_size_limit() { return heap_size_limit_; } size_t heap_size_limit() { return heap_size_limit_; }
private: private:
void set_total_heap_size(size_t size) { total_heap_size_ = size; }
void set_total_heap_size_executable(size_t size) {
total_heap_size_executable_ = size;
}
void set_total_physical_size(size_t size) {
total_physical_size_ = size;
}
void set_used_heap_size(size_t size) { used_heap_size_ = size; }
void set_heap_size_limit(size_t size) { heap_size_limit_ = size; }
size_t total_heap_size_; size_t total_heap_size_;
size_t total_heap_size_executable_; size_t total_heap_size_executable_;
size_t total_physical_size_; size_t total_physical_size_;
size_t used_heap_size_; size_t used_heap_size_;
size_t heap_size_limit_; size_t heap_size_limit_;
friend class V8; friend class V8;
friend class Isolate;
}; };
class RetainedObjectInfo; class RetainedObjectInfo;
/** /**
* Isolate represents an isolated instance of the V8 engine. V8 * Isolate represents an isolated instance of the V8 engine. V8
* isolates have completely separate states. Objects from one isolate * isolates have completely separate states. Objects from one isolate
* must not be used in other isolates. When V8 is initialized a * must not be used in other isolates. When V8 is initialized a
* default isolate is implicitly created and entered. The embedder * default isolate is implicitly created and entered. The embedder
* can create additional isolates and use them in parallel in multiple * can create additional isolates and use them in parallel in multiple
skipping to change at line 2883 skipping to change at line 2874
* Associate embedder-specific data with the isolate * Associate embedder-specific data with the isolate
*/ */
V8_INLINE(void SetData(void* data)); V8_INLINE(void SetData(void* data));
/** /**
* Retrieve embedder-specific data from the isolate. * Retrieve embedder-specific data from the isolate.
* Returns NULL if SetData has never been called. * Returns NULL if SetData has never been called.
*/ */
V8_INLINE(void* GetData()); V8_INLINE(void* GetData());
/**
* Get statistics about the heap memory usage.
*/
void GetHeapStatistics(HeapStatistics* heap_statistics);
private: private:
Isolate(); Isolate();
Isolate(const Isolate&); Isolate(const Isolate&);
~Isolate(); ~Isolate();
Isolate& operator=(const Isolate&); Isolate& operator=(const Isolate&);
void* operator new(size_t size); void* operator new(size_t size);
void operator delete(void*, size_t); void operator delete(void*, size_t);
}; };
class V8EXPORT StartupData { class V8EXPORT StartupData {
skipping to change at line 3096 skipping to change at line 3092
static StartupData::CompressionAlgorithm GetCompressedStartupDataAlgorith m(); static StartupData::CompressionAlgorithm GetCompressedStartupDataAlgorith m();
static int GetCompressedStartupDataCount(); static int GetCompressedStartupDataCount();
static void GetCompressedStartupData(StartupData* compressed_data); static void GetCompressedStartupData(StartupData* compressed_data);
static void SetDecompressedStartupData(StartupData* decompressed_data); static void SetDecompressedStartupData(StartupData* decompressed_data);
/** /**
* Adds a message listener. * Adds a message listener.
* *
* The same message listener can be added more than once and in that * The same message listener can be added more than once and in that
* case it will be called more than once for each message. * case it will be called more than once for each message.
*
* If data is specified, it will be passed to the callback when it is cal
led.
* Otherwise, the exception object will be passed to the callback instead
.
*/ */
static bool AddMessageListener(MessageCallback that, static bool AddMessageListener(MessageCallback that);
Handle<Value> data = Handle<Value>());
/** /**
* Remove all message listeners from the specified callback function. * Remove all message listeners from the specified callback function.
*/ */
static void RemoveMessageListeners(MessageCallback that); static void RemoveMessageListeners(MessageCallback that);
/** /**
* Tells V8 to capture current stack trace when uncaught exception occurs * Tells V8 to capture current stack trace when uncaught exception occurs
* and report it to the message listeners. The option is off by default. * and report it to the message listeners. The option is off by default.
*/ */
skipping to change at line 3431 skipping to change at line 3423
* Releases any resources used by v8 and stops any utility threads * Releases any resources used by v8 and stops any utility threads
* that may be running. Note that disposing v8 is permanent, it * that may be running. Note that disposing v8 is permanent, it
* cannot be reinitialized. * cannot be reinitialized.
* *
* It should generally not be necessary to dispose v8 before exiting * It should generally not be necessary to dispose v8 before exiting
* a process, this should happen automatically. It is only necessary * a process, this should happen automatically. It is only necessary
* to use if the process needs the resources taken up by v8. * to use if the process needs the resources taken up by v8.
*/ */
static bool Dispose(); static bool Dispose();
/** /** Deprecated. Use Isolate::GetHeapStatistics instead. */
* Get statistics about the heap memory usage. V8_DEPRECATED(static void GetHeapStatistics(HeapStatistics* heap_statisti
*/ cs));
static void GetHeapStatistics(HeapStatistics* heap_statistics);
/** /**
* Iterates through all external resources referenced from current isolat e * Iterates through all external resources referenced from current isolat e
* heap. GC is not invoked prior to iterating, therefore there is no * heap. GC is not invoked prior to iterating, therefore there is no
* guarantee that visited objects are still alive. * guarantee that visited objects are still alive.
*/ */
static void VisitExternalResources(ExternalResourceVisitor* visitor); static void VisitExternalResources(ExternalResourceVisitor* visitor);
/** /**
* Iterates through all the persistent handles in the current isolate's h eap * Iterates through all the persistent handles in the current isolate's h eap
skipping to change at line 4121 skipping to change at line 4111
static const int kEmptySymbolRootIndex = 119; static const int kEmptySymbolRootIndex = 119;
static const int kNodeClassIdOffset = 1 * kApiPointerSize; static const int kNodeClassIdOffset = 1 * kApiPointerSize;
static const int kNodeFlagsOffset = 1 * kApiPointerSize + 3; static const int kNodeFlagsOffset = 1 * kApiPointerSize + 3;
static const int kNodeStateMask = 0xf; static const int kNodeStateMask = 0xf;
static const int kNodeStateIsWeakValue = 2; static const int kNodeStateIsWeakValue = 2;
static const int kNodeStateIsNearDeathValue = 4; static const int kNodeStateIsNearDeathValue = 4;
static const int kNodeIsIndependentShift = 4; static const int kNodeIsIndependentShift = 4;
static const int kNodeIsPartiallyDependentShift = 5; static const int kNodeIsPartiallyDependentShift = 5;
static const int kJSObjectType = 0xab; static const int kJSObjectType = 0xad;
static const int kFirstNonstringType = 0x80; static const int kFirstNonstringType = 0x80;
static const int kOddballType = 0x82; static const int kOddballType = 0x82;
static const int kForeignType = 0x85; static const int kForeignType = 0x85;
static const int kUndefinedOddballKind = 5; static const int kUndefinedOddballKind = 5;
static const int kNullOddballKind = 3; static const int kNullOddballKind = 3;
V8_INLINE(static bool HasHeapObjectTag(internal::Object* value)) { V8_INLINE(static bool HasHeapObjectTag(internal::Object* value)) {
return ((reinterpret_cast<intptr_t>(value) & kHeapObjectTagMask) == return ((reinterpret_cast<intptr_t>(value) & kHeapObjectTagMask) ==
kHeapObjectTag); kHeapObjectTag);
 End of changes. 7 change blocks. 
22 lines changed or deleted 11 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/