| Index: src/accessors.h
|
| diff --git a/src/accessors.h b/src/accessors.h
|
| index 83a847222b44e69a8341bbaac08bdcf95aaa5dac..db506cef976e7724b4da21fd6dbd632b3a24e119 100644
|
| --- a/src/accessors.h
|
| +++ b/src/accessors.h
|
| @@ -43,7 +43,6 @@ namespace internal {
|
| V(FunctionArguments) \
|
| V(FunctionCaller) \
|
| V(ArrayLength) \
|
| - V(StringLength) \
|
| V(ScriptSource) \
|
| V(ScriptName) \
|
| V(ScriptId) \
|
| @@ -57,6 +56,9 @@ namespace internal {
|
| V(ScriptEvalFromScriptPosition) \
|
| V(ScriptEvalFromFunctionName)
|
|
|
| +#define ACCESSOR_INFO_LIST(V) \
|
| + V(StringLength) \
|
| +
|
| // Accessors contains all predefined proxy accessors.
|
|
|
| class Accessors : public AllStatic {
|
| @@ -67,11 +69,30 @@ class Accessors : public AllStatic {
|
| ACCESSOR_DESCRIPTOR_LIST(ACCESSOR_DESCRIPTOR_DECLARATION)
|
| #undef ACCESSOR_DESCRIPTOR_DECLARATION
|
|
|
| +#define ACCESSOR_INFO_DECLARATION(name) \
|
| + static void name##Getter( \
|
| + v8::Local<v8::String> name, \
|
| + const v8::PropertyCallbackInfo<v8::Value>& info); \
|
| + static void name##Setter( \
|
| + v8::Local<v8::String> name, \
|
| + v8::Local<v8::Value> value, \
|
| + const v8::PropertyCallbackInfo<void>& info); \
|
| + static Handle<AccessorInfo> name##Info( \
|
| + Isolate* isolate, \
|
| + PropertyAttributes attributes);
|
| + ACCESSOR_INFO_LIST(ACCESSOR_INFO_DECLARATION)
|
| +#undef ACCESSOR_INFO_DECLARATION
|
| +
|
| enum DescriptorId {
|
| #define ACCESSOR_DESCRIPTOR_DECLARATION(name) \
|
| k##name,
|
| ACCESSOR_DESCRIPTOR_LIST(ACCESSOR_DESCRIPTOR_DECLARATION)
|
| #undef ACCESSOR_DESCRIPTOR_DECLARATION
|
| +#define ACCESSOR_INFO_DECLARATION(name) \
|
| + k##name##Getter, \
|
| + k##name##Setter,
|
| + ACCESSOR_INFO_LIST(ACCESSOR_INFO_DECLARATION)
|
| +#undef ACCESSOR_INFO_DECLARATION
|
| descriptorCount
|
| };
|
|
|
| @@ -92,7 +113,6 @@ class Accessors : public AllStatic {
|
| Handle<String> name,
|
| int* object_offset);
|
|
|
| -
|
| private:
|
| // Accessor functions only used through the descriptor.
|
| static MaybeObject* FunctionSetPrototype(Isolate* isolate,
|
|
|