v8  3.14.5(node0.10.28)
V8 is Google's open source JavaScript engine
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
FastSmiOrObjectElementsAccessor< FastElementsAccessorSubclass, KindTraits > Class Template Reference
Inheritance diagram for FastSmiOrObjectElementsAccessor< FastElementsAccessorSubclass, KindTraits >:
Collaboration diagram for FastSmiOrObjectElementsAccessor< FastElementsAccessorSubclass, KindTraits >:

Public Member Functions

 FastSmiOrObjectElementsAccessor (const char *name)
 
- Public Member Functions inherited from FastElementsAccessor< FastElementsAccessorSubclass, KindTraits, kPointerSize >
 FastElementsAccessor (const char *name)
 
- Public Member Functions inherited from ElementsAccessor
 ElementsAccessor (const char *name)
 
virtual ~ElementsAccessor ()
 
const char * name () const
 
MUST_USE_RESULT MaybeObject * CopyElements (JSObject *from_holder, FixedArrayBase *to, ElementsKind to_kind, FixedArrayBase *from=NULL)
 

Static Public Member Functions

static MaybeObject * CopyElementsImpl (FixedArrayBase *from, uint32_t from_start, FixedArrayBase *to, ElementsKind to_kind, uint32_t to_start, int packed_size, int copy_size)
 
static MaybeObject * SetFastElementsCapacityAndLength (JSObject *obj, uint32_t capacity, uint32_t length)
 
- Static Public Member Functions inherited from ElementsAccessor
static ElementsAccessorForKind (ElementsKind elements_kind)
 
static ElementsAccessorForArray (FixedArrayBase *array)
 
static void InitializeOncePerProcess ()
 
static void TearDown ()
 

Additional Inherited Members

- Static Public Attributes inherited from ElementsAccessor
static const int kCopyToEnd = -1
 
static const int kCopyToEndAndInitializeToHole = -2
 
- Protected Types inherited from FastElementsAccessor< FastElementsAccessorSubclass, KindTraits, kPointerSize >
typedef KindTraits::BackingStore BackingStore
 
- Protected Types inherited from ElementsAccessorBase< FastElementsAccessorSubclass, KindTraits >
typedef KindTraits ElementsTraits
 
typedef KindTraits::BackingStore BackingStore
 
- Protected Member Functions inherited from FastElementsAccessor< FastElementsAccessorSubclass, KindTraits, kPointerSize >
virtual MaybeObject * Delete (JSObject *obj, uint32_t key, JSReceiver::DeleteMode mode)
 
- Protected Member Functions inherited from ElementsAccessorBase< FastElementsAccessorSubclass, KindTraits >
 ElementsAccessorBase (const char *name)
 
virtual ElementsKind kind () const
 
virtual void Validate (JSObject *holder)
 
virtual bool HasElement (Object *receiver, JSObject *holder, uint32_t key, FixedArrayBase *backing_store)
 
virtual MUST_USE_RESULT
MaybeObject * 
Get (Object *receiver, JSObject *holder, uint32_t key, FixedArrayBase *backing_store)
 
virtual MUST_USE_RESULT
MaybeObject * 
SetLength (JSArray *array, Object *length)
 
virtual MUST_USE_RESULT
MaybeObject * 
SetCapacityAndLength (JSArray *array, int capacity, int length)
 
virtual MUST_USE_RESULT
MaybeObject * 
CopyElements (JSObject *from_holder, uint32_t from_start, FixedArrayBase *to, ElementsKind to_kind, uint32_t to_start, int copy_size, FixedArrayBase *from)
 
virtual MUST_USE_RESULT
MaybeObject * 
AddElementsToFixedArray (Object *receiver, JSObject *holder, FixedArray *to, FixedArrayBase *from)
 
virtual uint32_t GetCapacity (FixedArrayBase *backing_store)
 
virtual uint32_t GetKeyForIndex (FixedArrayBase *backing_store, uint32_t index)
 
- Static Protected Member Functions inherited from FastElementsAccessor< FastElementsAccessorSubclass, KindTraits, kPointerSize >
static MaybeObject * SetLengthWithoutNormalize (BackingStore *backing_store, JSArray *array, Object *length_object, uint32_t length)
 
static MaybeObject * DeleteCommon (JSObject *obj, uint32_t key, JSReceiver::DeleteMode mode)
 
static bool HasElementImpl (Object *receiver, JSObject *holder, uint32_t key, typename KindTraits::BackingStore *backing_store)
 
static void ValidateContents (JSObject *holder, int length)
 
- Static Protected Member Functions inherited from ElementsAccessorBase< FastElementsAccessorSubclass, KindTraits >
static void ValidateContents (JSObject *holder, int length)
 
static void ValidateImpl (JSObject *holder)
 
static bool HasElementImpl (Object *receiver, JSObject *holder, uint32_t key, BackingStore *backing_store)
 
static MUST_USE_RESULT
MaybeObject * 
GetImpl (Object *receiver, JSObject *obj, uint32_t key, BackingStore *backing_store)
 
static MUST_USE_RESULT
MaybeObject * 
SetLengthImpl (JSObject *obj, Object *length, BackingStore *backing_store)
 
static MUST_USE_RESULT
MaybeObject * 
SetFastElementsCapacityAndLength (JSObject *obj, int capacity, int length)
 
static MUST_USE_RESULT
MaybeObject * 
CopyElementsImpl (FixedArrayBase *from, uint32_t from_start, FixedArrayBase *to, ElementsKind to_kind, uint32_t to_start, int packed_size, int copy_size)
 
static uint32_t GetCapacityImpl (BackingStore *backing_store)
 
static uint32_t GetKeyForIndexImpl (BackingStore *backing_store, uint32_t index)
 

Detailed Description

template<typename FastElementsAccessorSubclass, typename KindTraits>
class v8::internal::FastSmiOrObjectElementsAccessor< FastElementsAccessorSubclass, KindTraits >

Definition at line 926 of file elements.cc.

Constructor & Destructor Documentation

FastSmiOrObjectElementsAccessor ( const char *  name)
inlineexplicit

Definition at line 931 of file elements.cc.

Member Function Documentation

static MaybeObject* CopyElementsImpl ( FixedArrayBase from,
uint32_t  from_start,
FixedArrayBase to,
ElementsKind  to_kind,
uint32_t  to_start,
int  packed_size,
int  copy_size 
)
inlinestatic

Definition at line 936 of file elements.cc.

static MaybeObject* SetFastElementsCapacityAndLength ( JSObject obj,
uint32_t  capacity,
uint32_t  length 
)
inlinestatic

Definition at line 972 of file elements.cc.


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