v8.h   v8.h 
skipping to change at line 2782 skipping to change at line 2782
char** raw_data; char** raw_data;
}; };
/** /**
* EntropySource is used as a callback function when v8 needs a source * EntropySource is used as a callback function when v8 needs a source
* of entropy. * of entropy.
*/ */
typedef bool (*EntropySource)(unsigned char* buffer, size_t length); typedef bool (*EntropySource)(unsigned char* buffer, size_t length);
/** /**
* Interface for iterating though all external resources in the heap.
*/
class V8EXPORT ExternalResourceVisitor { // NOLINT
public:
virtual ~ExternalResourceVisitor() {}
virtual void VisitExternalString(Handle<String> string) {}
};
/**
* Container class for static utility functions. * Container class for static utility functions.
*/ */
class V8EXPORT V8 { class V8EXPORT V8 {
public: public:
/** Set the callback to invoke in case of fatal errors. */ /** Set the callback to invoke in case of fatal errors. */
static void SetFatalErrorHandler(FatalErrorCallback that); static void SetFatalErrorHandler(FatalErrorCallback that);
/** /**
* Set the callback to invoke to check if code generation from * Set the callback to invoke to check if code generation from
* strings should be allowed. * strings should be allowed.
skipping to change at line 3137 skipping to change at line 3146
* 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();
/** /**
* Get statistics about the heap memory usage. * Get statistics about the heap memory usage.
*/ */
static void GetHeapStatistics(HeapStatistics* heap_statistics); static void GetHeapStatistics(HeapStatistics* heap_statistics);
/** /**
* Iterates through all external resources referenced from current isolat
e
* heap. This method is not expected to be used except for debugging purp
oses
* and may be quite slow.
*/
static void VisitExternalResources(ExternalResourceVisitor* visitor);
/**
* Optional notification that the embedder is idle. * Optional notification that the embedder is idle.
* V8 uses the notification to reduce memory footprint. * V8 uses the notification to reduce memory footprint.
* This call can be used repeatedly if the embedder remains idle. * This call can be used repeatedly if the embedder remains idle.
* Returns true if the embedder should stop calling IdleNotification * Returns true if the embedder should stop calling IdleNotification
* until real work has been done. This indicates that V8 has done * until real work has been done. This indicates that V8 has done
* as much cleanup as it will be able to do. * as much cleanup as it will be able to do.
* *
* The hint argument specifies the amount of work to be done in the funct ion * The hint argument specifies the amount of work to be done in the funct ion
* on scale from 1 to 1000. There is no guarantee that the actual work wi ll * on scale from 1 to 1000. There is no guarantee that the actual work wi ll
* match the hint. * match the hint.
skipping to change at line 3739 skipping to change at line 3755
static const int kHeapObjectMapOffset = 0; static const int kHeapObjectMapOffset = 0;
static const int kMapInstanceTypeOffset = 1 * kApiPointerSize + kApiIntSi ze; static const int kMapInstanceTypeOffset = 1 * kApiPointerSize + kApiIntSi ze;
static const int kStringResourceOffset = static const int kStringResourceOffset =
InternalConstants<kApiPointerSize>::kStringResourceOffset; InternalConstants<kApiPointerSize>::kStringResourceOffset;
static const int kForeignAddressOffset = kApiPointerSize; static const int kForeignAddressOffset = kApiPointerSize;
static const int kJSObjectHeaderSize = 3 * kApiPointerSize; static const int kJSObjectHeaderSize = 3 * kApiPointerSize;
static const int kFullStringRepresentationMask = 0x07; static const int kFullStringRepresentationMask = 0x07;
static const int kExternalTwoByteRepresentationTag = 0x02; static const int kExternalTwoByteRepresentationTag = 0x02;
static const int kJSObjectType = 0xa6; static const int kJSObjectType = 0xa7;
static const int kFirstNonstringType = 0x80; static const int kFirstNonstringType = 0x80;
static const int kForeignType = 0x85; static const int kForeignType = 0x85;
static inline bool HasHeapObjectTag(internal::Object* value) { static inline bool HasHeapObjectTag(internal::Object* value) {
return ((reinterpret_cast<intptr_t>(value) & kHeapObjectTagMask) == return ((reinterpret_cast<intptr_t>(value) & kHeapObjectTagMask) ==
kHeapObjectTag); kHeapObjectTag);
} }
static inline bool HasSmiTag(internal::Object* value) { static inline bool HasSmiTag(internal::Object* value) {
return ((reinterpret_cast<intptr_t>(value) & kSmiTagMask) == kSmiTag); return ((reinterpret_cast<intptr_t>(value) & kSmiTagMask) == kSmiTag);
 End of changes. 3 change blocks. 
1 lines changed or deleted 19 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/