v8.h   v8.h 
skipping to change at line 136 skipping to change at line 136
template <class T> class Handle; template <class T> class Handle;
template <class T> class Local; template <class T> class Local;
template <class T> class Persistent; template <class T> class Persistent;
class FunctionTemplate; class FunctionTemplate;
class ObjectTemplate; class ObjectTemplate;
class Data; class Data;
class AccessorInfo; class AccessorInfo;
class StackTrace; class StackTrace;
class StackFrame; class StackFrame;
class Isolate; class Isolate;
class DeclaredAccessorDescriptor;
class ObjectOperationDescriptor;
class RawOperationDescriptor;
namespace internal { namespace internal {
class Arguments; class Arguments;
class Object; class Object;
class Heap; class Heap;
class HeapObject; class HeapObject;
class Isolate; class Isolate;
} }
skipping to change at line 1585 skipping to change at line 1588
bool Delete(uint32_t index); bool Delete(uint32_t index);
bool SetAccessor(Handle<String> name, bool SetAccessor(Handle<String> name,
AccessorGetter getter, AccessorGetter getter,
AccessorSetter setter = 0, AccessorSetter setter = 0,
Handle<Value> data = Handle<Value>(), Handle<Value> data = Handle<Value>(),
AccessControl settings = DEFAULT, AccessControl settings = DEFAULT,
PropertyAttribute attribute = None); PropertyAttribute attribute = None);
// This function is not yet stable and should not be used at this time.
bool SetAccessor(Handle<String> name,
Handle<DeclaredAccessorDescriptor> descriptor,
AccessControl settings = DEFAULT,
PropertyAttribute attribute = None);
/** /**
* Returns an array containing the names of the enumerable properties * Returns an array containing the names of the enumerable properties
* of this object, including properties from prototype objects. The * of this object, including properties from prototype objects. The
* array returned by this method contains the same values as would * array returned by this method contains the same values as would
* be enumerated by a for-in statement over this object. * be enumerated by a for-in statement over this object.
*/ */
Local<Array> GetPropertyNames(); Local<Array> GetPropertyNames();
/** /**
* This function has the same functionality as GetPropertyNames but * This function has the same functionality as GetPropertyNames but
skipping to change at line 2334 skipping to change at line 2343
void ReadOnlyPrototype(); void ReadOnlyPrototype();
/** /**
* Returns true if the given object is an instance of this function * Returns true if the given object is an instance of this function
* template. * template.
*/ */
bool HasInstance(Handle<Value> object); bool HasInstance(Handle<Value> object);
private: private:
FunctionTemplate(); FunctionTemplate();
void AddInstancePropertyAccessor(Handle<String> name,
AccessorGetter getter,
AccessorSetter setter,
Handle<Value> data,
AccessControl settings,
PropertyAttribute attributes,
Handle<AccessorSignature> signature);
void SetNamedInstancePropertyHandler(NamedPropertyGetter getter, void SetNamedInstancePropertyHandler(NamedPropertyGetter getter,
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,
skipping to change at line 2412 skipping to change at line 2414
*/ */
void SetAccessor(Handle<String> name, void SetAccessor(Handle<String> name,
AccessorGetter getter, AccessorGetter getter,
AccessorSetter setter = 0, AccessorSetter setter = 0,
Handle<Value> data = Handle<Value>(), Handle<Value> data = Handle<Value>(),
AccessControl settings = DEFAULT, AccessControl settings = DEFAULT,
PropertyAttribute attribute = None, PropertyAttribute attribute = None,
Handle<AccessorSignature> signature = Handle<AccessorSignature> signature =
Handle<AccessorSignature>()); Handle<AccessorSignature>());
// This function is not yet stable and should not be used at this time.
bool SetAccessor(Handle<String> name,
Handle<DeclaredAccessorDescriptor> descriptor,
AccessControl settings = DEFAULT,
PropertyAttribute attribute = None,
Handle<AccessorSignature> signature =
Handle<AccessorSignature>());
/** /**
* Sets a named property handler on the object template. * Sets a named property handler on the object template.
* *
* Whenever a named property is accessed on objects created from * Whenever a named property is accessed on objects created from
* this object template, the provided callback is invoked instead of * this object template, the provided callback is invoked instead of
* accessing the property directly on the JavaScript object. * accessing the property directly on the JavaScript object.
* *
* \param getter The callback to invoke when getting a property. * \param getter The callback to invoke when getting a property.
* \param setter The callback to invoke when setting a property. * \param setter The callback to invoke when setting a property.
* \param query The callback to invoke to check if a property is present, * \param query The callback to invoke to check if a property is present,
skipping to change at line 2538 skipping to change at line 2548
* to an accessor callback. * to an accessor callback.
*/ */
class V8EXPORT AccessorSignature : public Data { class V8EXPORT AccessorSignature : public Data {
public: public:
static Local<AccessorSignature> New(Handle<FunctionTemplate> receiver = static Local<AccessorSignature> New(Handle<FunctionTemplate> receiver =
Handle<FunctionTemplate>()); Handle<FunctionTemplate>());
private: private:
AccessorSignature(); AccessorSignature();
}; };
class V8EXPORT DeclaredAccessorDescriptor : public Data {
private:
DeclaredAccessorDescriptor();
};
class V8EXPORT ObjectOperationDescriptor : public Data {
public:
// This function is not yet stable and should not be used at this time.
static Local<RawOperationDescriptor> NewInternalFieldDereference(
Isolate* isolate,
int internal_field);
private:
ObjectOperationDescriptor();
};
enum DeclaredAccessorDescriptorDataType {
kDescriptorBoolType,
kDescriptorInt8Type, kDescriptorUint8Type,
kDescriptorInt16Type, kDescriptorUint16Type,
kDescriptorInt32Type, kDescriptorUint32Type,
kDescriptorFloatType, kDescriptorDoubleType
};
class V8EXPORT RawOperationDescriptor : public Data {
public:
Local<DeclaredAccessorDescriptor> NewHandleDereference(Isolate* isolate);
Local<RawOperationDescriptor> NewRawDereference(Isolate* isolate);
Local<RawOperationDescriptor> NewRawShift(Isolate* isolate,
int16_t byte_offset);
Local<DeclaredAccessorDescriptor> NewPointerCompare(Isolate* isolate,
void* compare_value);
Local<DeclaredAccessorDescriptor> NewPrimitiveValue(
Isolate* isolate,
DeclaredAccessorDescriptorDataType data_type,
uint8_t bool_offset = 0);
Local<DeclaredAccessorDescriptor> NewBitmaskCompare8(Isolate* isolate,
uint8_t bitmask,
uint8_t compare_valu
e);
Local<DeclaredAccessorDescriptor> NewBitmaskCompare16(
Isolate* isolate,
uint16_t bitmask,
uint16_t compare_value);
Local<DeclaredAccessorDescriptor> NewBitmaskCompare32(
Isolate* isolate,
uint32_t bitmask,
uint32_t compare_value);
private:
RawOperationDescriptor();
};
/** /**
* A utility for determining the type of objects based on the template * A utility for determining the type of objects based on the template
* they were constructed from. * they were constructed from.
*/ */
class V8EXPORT TypeSwitch : public Data { class V8EXPORT TypeSwitch : public Data {
public: public:
static Local<TypeSwitch> New(Handle<FunctionTemplate> type); static Local<TypeSwitch> New(Handle<FunctionTemplate> type);
static Local<TypeSwitch> New(int argc, Handle<FunctionTemplate> types[]); static Local<TypeSwitch> New(int argc, Handle<FunctionTemplate> types[]);
int match(Handle<Value> value); int match(Handle<Value> value);
private: private:
 End of changes. 5 change blocks. 
7 lines changed or deleted 69 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/