v8-profiler.h   v8-profiler.h 
skipping to change at line 191 skipping to change at line 191
class HeapGraphNode; class HeapGraphNode;
/** /**
* HeapSnapshotEdge represents a directed connection between heap * HeapSnapshotEdge represents a directed connection between heap
* graph nodes: from retaners to retained nodes. * graph nodes: from retaners to retained nodes.
*/ */
class V8EXPORT HeapGraphEdge { class V8EXPORT HeapGraphEdge {
public: public:
enum Type { enum Type {
CONTEXT_VARIABLE = 0, // A variable from a function context. kContextVariable = 0, // A variable from a function context.
ELEMENT = 1, // An element of an array. kElement = 1, // An element of an array.
PROPERTY = 2, // A named object property. kProperty = 2, // A named object property.
INTERNAL = 3 // A link that can't be accessed from JS, kInternal = 3 // A link that can't be accessed from JS,
// thus, its name isn't a real property name. // thus, its name isn't a real property name.
}; };
/** Returns edge type (see HeapGraphEdge::Type). */ /** Returns edge type (see HeapGraphEdge::Type). */
Type GetType() const; Type GetType() const;
/** /**
* Returns edge name. This can be a variable name, an element index, or * Returns edge name. This can be a variable name, an element index, or
* a property name. * a property name.
*/ */
skipping to change at line 235 skipping to change at line 235
/** Returns destination node. */ /** Returns destination node. */
const HeapGraphNode* GetToNode() const; const HeapGraphNode* GetToNode() const;
}; };
/** /**
* HeapGraphNode represents a node in a heap graph. * HeapGraphNode represents a node in a heap graph.
*/ */
class V8EXPORT HeapGraphNode { class V8EXPORT HeapGraphNode {
public: public:
enum Type { enum Type {
INTERNAL = 0, // Internal node, a virtual one, for housekeeping. kInternal = 0, // Internal node, a virtual one, for housekeeping.
ARRAY = 1, // An array of elements. kArray = 1, // An array of elements.
STRING = 2, // A string. kString = 2, // A string.
OBJECT = 3, // A JS object (except for arrays and strings). kObject = 3, // A JS object (except for arrays and strings).
CODE = 4, // Compiled code. kCode = 4, // Compiled code.
CLOSURE = 5 // Function closure. kClosure = 5 // Function closure.
}; };
/** Returns node type (see HeapGraphNode::Type). */ /** Returns node type (see HeapGraphNode::Type). */
Type GetType() const; Type GetType() const;
/** /**
* Returns node name. Depending on node's type this can be the name * Returns node name. Depending on node's type this can be the name
* of the constructor (for objects), the name of the function (for * of the constructor (for objects), the name of the function (for
* closures), string value, or an empty string (for compiled code). * closures), string value, or an empty string (for compiled code).
*/ */
skipping to change at line 263 skipping to change at line 263
/** /**
* Returns node id. For the same heap object, the id remains the same * Returns node id. For the same heap object, the id remains the same
* across all snapshots. * across all snapshots.
*/ */
uint64_t GetId() const; uint64_t GetId() const;
/** Returns node's own size, in bytes. */ /** Returns node's own size, in bytes. */
int GetSelfSize() const; int GetSelfSize() const;
/** Returns node's network (self + reachable nodes) size, in bytes. */ /** Returns node's network (self + reachable nodes) size, in bytes. */
int GetTotalSize() const; int GetReachableSize() const;
/** /**
* Returns node's private size, in bytes. That is, the size of memory * Returns node's retained size, in bytes. That is, self + sizes of
* that will be reclaimed having this node collected. * the objects that are reachable only from this object. In other
* words, the size of memory that will be reclaimed having this node
* collected.
*/ */
int GetPrivateSize() const; int GetRetainedSize() const;
/** Returns child nodes count of the node. */ /** Returns child nodes count of the node. */
int GetChildrenCount() const; int GetChildrenCount() const;
/** Retrieves a child by index. */ /** Retrieves a child by index. */
const HeapGraphEdge* GetChild(int index) const; const HeapGraphEdge* GetChild(int index) const;
/** Returns retainer nodes count of the node. */ /** Returns retainer nodes count of the node. */
int GetRetainersCount() const; int GetRetainersCount() const;
 End of changes. 5 change blocks. 
14 lines changed or deleted 16 lines changed or added


 v8.h   v8.h 
skipping to change at line 906 skipping to change at line 906
/** /**
* Returns true if this value is a 32-bit unsigned integer. * Returns true if this value is a 32-bit unsigned integer.
*/ */
V8EXPORT bool IsUint32() const; V8EXPORT bool IsUint32() const;
/** /**
* Returns true if this value is a Date. * Returns true if this value is a Date.
*/ */
V8EXPORT bool IsDate() const; V8EXPORT bool IsDate() const;
/**
* Returns true if this value is a RegExp.
*/
V8EXPORT bool IsRegExp() const;
V8EXPORT Local<Boolean> ToBoolean() const; V8EXPORT Local<Boolean> ToBoolean() const;
V8EXPORT Local<Number> ToNumber() const; V8EXPORT Local<Number> ToNumber() const;
V8EXPORT Local<String> ToString() const; V8EXPORT Local<String> ToString() const;
V8EXPORT Local<String> ToDetailString() const; V8EXPORT Local<String> ToDetailString() const;
V8EXPORT Local<Object> ToObject() const; V8EXPORT Local<Object> ToObject() const;
V8EXPORT Local<Integer> ToInteger() const; V8EXPORT Local<Integer> ToInteger() const;
V8EXPORT Local<Uint32> ToUint32() const; V8EXPORT Local<Uint32> ToUint32() const;
V8EXPORT Local<Int32> ToInt32() const; V8EXPORT Local<Int32> ToInt32() const;
/** /**
skipping to change at line 1781 skipping to change at line 1786
/** /**
* Returns the value if the setter intercepts the request. * Returns the value if the setter intercepts the request.
* Otherwise, returns an empty handle. * Otherwise, returns an empty handle.
*/ */
typedef Handle<Value> (*IndexedPropertySetter)(uint32_t index, typedef Handle<Value> (*IndexedPropertySetter)(uint32_t index,
Local<Value> value, Local<Value> value,
const AccessorInfo& info); const AccessorInfo& info);
/** /**
* Returns a non-empty handle if the interceptor intercepts the request. * Returns a non-empty handle if the interceptor intercepts the request.
* The result is true if the property exists and false otherwise. * The result is true if either a boolean (true if property exists and fals
e
* otherwise) or an integer encoding property attributes.
*/ */
#ifdef USE_NEW_QUERY_CALLBACKS
typedef Handle<Integer> (*IndexedPropertyQuery)(uint32_t index,
const AccessorInfo& info);
#else
typedef Handle<Boolean> (*IndexedPropertyQuery)(uint32_t index, typedef Handle<Boolean> (*IndexedPropertyQuery)(uint32_t index,
const AccessorInfo& info); const AccessorInfo& info);
#endif
typedef Handle<Value> (*IndexedPropertyQueryImpl)(uint32_t index,
const AccessorInfo& info)
;
/** /**
* Returns a non-empty handle if the deleter intercepts the request. * Returns a non-empty handle if the deleter intercepts the request.
* The return value is true if the property could be deleted and false * The return value is true if the property could be deleted and false
* otherwise. * otherwise.
*/ */
typedef Handle<Boolean> (*IndexedPropertyDeleter)(uint32_t index, typedef Handle<Boolean> (*IndexedPropertyDeleter)(uint32_t index,
const AccessorInfo& info) ; const AccessorInfo& info) ;
/** /**
skipping to change at line 1997 skipping to change at line 2011
NamedPropertySetter setter, NamedPropertySetter setter,
NamedPropertyQuery query, NamedPropertyQuery query,
NamedPropertyDeleter remover, NamedPropertyDeleter remover,
NamedPropertyEnumerator enumerator, NamedPropertyEnumerator enumerator,
Handle<Value> data); Handle<Value> data);
void SetIndexedInstancePropertyHandler(IndexedPropertyGetter getter, void SetIndexedInstancePropertyHandler(IndexedPropertyGetter getter,
IndexedPropertySetter setter, IndexedPropertySetter setter,
IndexedPropertyQuery query, IndexedPropertyQuery query,
IndexedPropertyDeleter remover, IndexedPropertyDeleter remover,
IndexedPropertyEnumerator enumerat or, IndexedPropertyEnumerator enumerat or,
Handle<Value> data); Handle<Value> data) {
IndexedPropertyQueryImpl casted =
reinterpret_cast<IndexedPropertyQueryImpl>(query);
SetIndexedInstancePropertyHandlerImpl(getter,
setter,
casted,
remover,
enumerator,
data);
}
void SetIndexedInstancePropertyHandlerImpl(
IndexedPropertyGetter getter,
IndexedPropertySetter setter,
IndexedPropertyQueryImpl query,
IndexedPropertyDeleter remover,
IndexedPropertyEnumerator enumerator,
Handle<Value> data);
void SetInstanceCallAsFunctionHandler(InvocationCallback callback, void SetInstanceCallAsFunctionHandler(InvocationCallback callback,
Handle<Value> data); Handle<Value> data);
friend class Context; friend class Context;
friend class ObjectTemplate; friend class ObjectTemplate;
}; };
/** /**
* An ObjectTemplate is used to create objects at runtime. * An ObjectTemplate is used to create objects at runtime.
* *
skipping to change at line 2095 skipping to change at line 2125
* \param enumerator The callback to invoke to enumerate all the indexed * \param enumerator The callback to invoke to enumerate all the indexed
* properties of an object. * properties of an object.
* \param data A piece of data that will be passed to the callbacks * \param data A piece of data that will be passed to the callbacks
* whenever they are invoked. * whenever they are invoked.
*/ */
void SetIndexedPropertyHandler(IndexedPropertyGetter getter, void SetIndexedPropertyHandler(IndexedPropertyGetter getter,
IndexedPropertySetter setter = 0, IndexedPropertySetter setter = 0,
IndexedPropertyQuery query = 0, IndexedPropertyQuery query = 0,
IndexedPropertyDeleter deleter = 0, IndexedPropertyDeleter deleter = 0,
IndexedPropertyEnumerator enumerator = 0, IndexedPropertyEnumerator enumerator = 0,
Handle<Value> data = Handle<Value>()); Handle<Value> data = Handle<Value>()) {
IndexedPropertyQueryImpl casted =
reinterpret_cast<IndexedPropertyQueryImpl>(query);
SetIndexedPropertyHandlerImpl(getter,
setter,
casted,
deleter,
enumerator,
data);
}
private:
void SetIndexedPropertyHandlerImpl(IndexedPropertyGetter getter,
IndexedPropertySetter setter,
IndexedPropertyQueryImpl query,
IndexedPropertyDeleter deleter,
IndexedPropertyEnumerator enumerator,
Handle<Value> data);
public:
/** /**
* Sets the callback to be used when calling instances created from * Sets the callback to be used when calling instances created from
* this template as a function. If no callback is set, instances * this template as a function. If no callback is set, instances
* behave like normal JavaScript objects that cannot be called as a * behave like normal JavaScript objects that cannot be called as a
* function. * function.
*/ */
void SetCallAsFunctionHandler(InvocationCallback callback, void SetCallAsFunctionHandler(InvocationCallback callback,
Handle<Value> data = Handle<Value>()); Handle<Value> data = Handle<Value>());
/** /**
 End of changes. 6 change blocks. 
3 lines changed or deleted 53 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/