V8 Project
v8::internal::PropertyCallbackArguments Class Reference

#include <arguments.h>

+ Inheritance diagram for v8::internal::PropertyCallbackArguments:
+ Collaboration diagram for v8::internal::PropertyCallbackArguments:

Public Types

typedef PropertyCallbackInfo< ValueT
 
typedef CustomArguments< TSuper
 
- Public Types inherited from v8::internal::CustomArguments< PropertyCallbackInfo< Value > >
typedef CustomArgumentsBase< T::kArgsLength > Super
 

Public Member Functions

 PropertyCallbackArguments (Isolate *isolate, Object *data, Object *self, JSObject *holder)
 
- Public Member Functions inherited from v8::internal::CustomArguments< PropertyCallbackInfo< Value > >
 ~CustomArguments ()
 
- Public Member Functions inherited from v8::internal::CustomArgumentsBase< T::kArgsLength >
virtual void IterateInstance (ObjectVisitor *v)
 

Static Public Attributes

static const int kArgsLength = T::kArgsLength
 
static const int kThisIndex = T::kThisIndex
 
static const int kHolderIndex = T::kHolderIndex
 
static const int kDataIndex = T::kDataIndex
 
static const int kReturnValueDefaultValueIndex
 
static const int kIsolateIndex = T::kIsolateIndex
 
- Static Public Attributes inherited from v8::internal::CustomArguments< PropertyCallbackInfo< Value > >
static const int kReturnValueOffset
 

Additional Inherited Members

- Protected Member Functions inherited from v8::internal::CustomArguments< PropertyCallbackInfo< Value > >
 CustomArguments (Isolate *isolate)
 
v8::Handle< VGetReturnValue (Isolate *isolate)
 
Isolateisolate ()
 
- Protected Member Functions inherited from v8::internal::CustomArgumentsBase< T::kArgsLength >
Object ** begin ()
 
 CustomArgumentsBase (Isolate *isolate)
 
- Protected Attributes inherited from v8::internal::CustomArgumentsBase< T::kArgsLength >
Objectvalues_ [kArrayLength]
 

Detailed Description

Definition at line 151 of file arguments.h.

Member Typedef Documentation

◆ Super

◆ T

Constructor & Destructor Documentation

◆ PropertyCallbackArguments()

v8::internal::PropertyCallbackArguments::PropertyCallbackArguments ( Isolate isolate,
Object data,
Object self,
JSObject holder 
)
inline

Definition at line 164 of file arguments.h.

168  : Super(isolate) {
169  Object** values = this->begin();
170  values[T::kThisIndex] = self;
171  values[T::kHolderIndex] = holder;
172  values[T::kDataIndex] = data;
173  values[T::kIsolateIndex] = reinterpret_cast<Object*>(isolate);
174  // Here the hole is set as default value.
175  // It cannot escape into js as it's remove in Call below.
177  isolate->heap()->the_hole_value();
178  values[T::kReturnValueIndex] = isolate->heap()->the_hole_value();
179  DCHECK(values[T::kHolderIndex]->IsHeapObject());
180  DCHECK(values[T::kIsolateIndex]->IsSmi());
181  }
static const int kReturnValueDefaultValueIndex
Definition: v8.h:2707
static const int kDataIndex
Definition: v8.h:2709
static const int kIsolateIndex
Definition: v8.h:2706
static const int kThisIndex
Definition: v8.h:2710
static const int kHolderIndex
Definition: v8.h:2705
static const int kReturnValueIndex
Definition: v8.h:2708
#define DCHECK(condition)
Definition: logging.h:205
kSerializedDataOffset Object
Definition: objects-inl.h:5322

References v8::internal::CustomArgumentsBase< T::kArgsLength >::begin(), DCHECK, v8::internal::Isolate::heap(), v8::internal::CustomArguments< PropertyCallbackInfo< Value > >::isolate(), v8::PropertyCallbackInfo< T >::kDataIndex, v8::PropertyCallbackInfo< T >::kHolderIndex, v8::PropertyCallbackInfo< T >::kIsolateIndex, v8::PropertyCallbackInfo< T >::kReturnValueDefaultValueIndex, v8::PropertyCallbackInfo< T >::kReturnValueIndex, and v8::PropertyCallbackInfo< T >::kThisIndex.

+ Here is the call graph for this function:

Member Data Documentation

◆ kArgsLength

const int v8::internal::PropertyCallbackArguments::kArgsLength = T::kArgsLength
static

Definition at line 156 of file arguments.h.

◆ kDataIndex

const int v8::internal::PropertyCallbackArguments::kDataIndex = T::kDataIndex
static

Definition at line 159 of file arguments.h.

◆ kHolderIndex

const int v8::internal::PropertyCallbackArguments::kHolderIndex = T::kHolderIndex
static

Definition at line 158 of file arguments.h.

◆ kIsolateIndex

const int v8::internal::PropertyCallbackArguments::kIsolateIndex = T::kIsolateIndex
static

Definition at line 162 of file arguments.h.

◆ kReturnValueDefaultValueIndex

const int v8::internal::PropertyCallbackArguments::kReturnValueDefaultValueIndex
static
Initial value:

Definition at line 160 of file arguments.h.

◆ kThisIndex

const int v8::internal::PropertyCallbackArguments::kThisIndex = T::kThisIndex
static

Definition at line 157 of file arguments.h.


The documentation for this class was generated from the following file: