v8
3.14.5(node0.10.28)
V8 is Google's open source JavaScript engine
|
#include <objects.h>
Public Types | |
enum | DeleteMode { NORMAL_DELETION, STRICT_DELETION, FORCE_DELETION } |
enum | StoreFromKeyed { MAY_BE_STORE_FROM_KEYED, CERTAINLY_NOT_STORE_FROM_KEYED } |
enum | ExtensibilityCheck { PERFORM_EXTENSIBILITY_CHECK, OMIT_EXTENSIBILITY_CHECK } |
Static Public Member Functions | |
static JSReceiver * | cast (Object *obj) |
static Handle< Object > | SetProperty (Handle< JSReceiver > object, Handle< String > key, Handle< Object > value, PropertyAttributes attributes, StrictModeFlag strict_mode) |
Static Public Member Functions inherited from HeapObject | |
static HeapObject * | FromAddress (Address address) |
static Object ** | RawField (HeapObject *obj, int offset) |
static HeapObject * | cast (Object *obj) |
Static Public Member Functions inherited from Object | |
static Handle< Object > | GetProperty (Handle< Object > object, Handle< Object > receiver, LookupResult *result, Handle< String > key, PropertyAttributes *attributes) |
static Handle< Object > | GetElement (Handle< Object > object, uint32_t index) |
static Object * | cast (Object *value) |
Protected Member Functions | |
Smi * | GenerateIdentityHash () |
Protected Member Functions inherited from HeapObject | |
void | IteratePointers (ObjectVisitor *v, int start, int end) |
void | IteratePointer (ObjectVisitor *v, int offset) |
Additional Inherited Members | |
Static Public Attributes inherited from HeapObject | |
static const int | kMapOffset = Object::kHeaderSize |
static const int | kHeaderSize = kMapOffset + kPointerSize |
Static Public Attributes inherited from Object | |
static const int | kHeaderSize = 0 |
enum DeleteMode |
enum ExtensibilityCheck |
enum StoreFromKeyed |
|
inlinestatic |
Referenced by SharedFunctionInfo::CanGenerateInlineConstructor(), Object::GetHash(), JSObject::GetPropertyWithCallback(), JSReceiver::LocalLookup(), Object::Lookup(), JSReceiver::Lookup(), JSObject::LookupAccessor(), v8::internal::RUNTIME_FUNCTION(), JSProxy::SetPropertyViaPrototypesWithHandler(), JSObject::SetPropertyWithCallback(), and JSReceiver::SetPrototype().
String * class_name | ( | ) |
Definition at line 1474 of file objects.cc.
References JSFunction::cast(), String::cast(), HeapObject::GetHeap(), and HeapObject::map().
Referenced by Logger::ApiIndexedPropertyAccess(), Logger::ApiNamedPropertyAccess(), Object::HasSpecificClassOf(), v8::internal::RUNTIME_FUNCTION(), and Logger::SuspectReadEvent().
String * constructor_name | ( | ) |
Definition at line 1487 of file objects.cc.
References JSObject::cast(), JSFunction::cast(), String::cast(), JSReceiver::constructor_name(), HeapObject::GetHeap(), JSReceiver::GetPrototype(), String::length(), and HeapObject::map().
Referenced by JSReceiver::constructor_name(), V8HeapExplorer::GetConstructorName(), and JSObject::JSObjectShortPrint().
MaybeObject * DeleteElement | ( | uint32_t | index, |
DeleteMode | mode | ||
) |
Definition at line 3991 of file objects.cc.
References JSObject::cast(), JSProxy::cast(), JSObject::DeleteElement(), and JSProxy::DeleteElementWithHandler().
MaybeObject * DeleteProperty | ( | String * | name, |
DeleteMode | mode | ||
) |
Definition at line 3999 of file objects.cc.
References JSObject::cast(), JSProxy::cast(), JSObject::DeleteProperty(), and JSProxy::DeletePropertyWithHandler().
|
protected |
Definition at line 3506 of file objects.cc.
References Smi::FromInt(), HeapObject::GetIsolate(), Smi::kMaxValue, and V8::RandomPrivate().
Referenced by JSObject::GetIdentityHash(), and JSProxy::GetIdentityHash().
|
inline |
Definition at line 5042 of file objects-inl.h.
References HeapObject::map().
|
inline |
Definition at line 5080 of file objects-inl.h.
References JSObject::cast(), JSProxy::cast(), JSObject::GetIdentityHash(), and JSProxy::GetIdentityHash().
Referenced by Object::GetHash().
PropertyAttributes GetLocalPropertyAttribute | ( | String * | name | ) |
Definition at line 3179 of file objects.cc.
References ABSENT, String::AsArrayIndex(), JSObject::cast(), HeapObject::GetIsolate(), JSReceiver::GetPropertyAttribute(), JSObject::HasLocalElement(), JSReceiver::LocalLookup(), and NONE.
Referenced by JSReceiver::HasLocalProperty().
|
inline |
Definition at line 5063 of file objects-inl.h.
References JSReceiver::GetPropertyAttributeWithReceiver().
Referenced by JSReceiver::GetLocalPropertyAttribute(), JSReceiver::GetPropertyAttributeWithReceiver(), and JSReceiver::HasProperty().
PropertyAttributes GetPropertyAttributeWithReceiver | ( | JSReceiver * | receiver, |
String * | name | ||
) |
Definition at line 3128 of file objects.cc.
References ABSENT, String::AsArrayIndex(), JSObject::cast(), HeapObject::GetIsolate(), JSReceiver::GetPropertyAttribute(), JSObject::HasElementWithReceiver(), JSReceiver::Lookup(), and NONE.
Referenced by JSReceiver::GetPropertyAttribute(), and JSObject::GetPropertyAttributePostInterceptor().
|
inline |
Definition at line 5037 of file objects-inl.h.
References HeapObject::map().
Referenced by v8::internal::BUILTIN(), JSObject::BypassGlobalProxy(), JSReceiver::constructor_name(), JSObject::DefineAccessor(), JSObject::DeleteElement(), JSObject::DeleteHiddenProperty(), JSObject::DeleteProperty(), JSObject::GetHiddenProperty(), JSObject::GetPropertyAttributePostInterceptor(), JSObject::GetPropertyPostInterceptor(), JSObject::HasElementWithReceiver(), JSObject::HasLocalElement(), JSReceiver::IsSimpleEnum(), JSReceiver::LocalLookup(), JSObject::LocalLookupRealNamedProperty(), JSReceiver::Lookup(), JSObject::LookupAccessor(), JSObject::LookupCallbackProperty(), JSObject::LookupRealNamedPropertyInPrototypes(), JSObject::PreventExtensions(), v8::internal::RUNTIME_FUNCTION(), JSObject::SetElement(), JSObject::SetElementWithCallbackSetterInPrototypes(), JSObject::SetHiddenProperty(), JSObject::SetLocalPropertyIgnoreAttributes(), JSObject::SetPropertyForResult(), and JSReceiver::SetPrototype().
|
inline |
Definition at line 5087 of file objects-inl.h.
References JSObject::cast(), JSProxy::cast(), JSProxy::HasElementWithHandler(), and JSObject::HasElementWithReceiver().
|
inline |
Definition at line 5055 of file objects-inl.h.
References ABSENT, JSProxy::cast(), JSReceiver::GetLocalPropertyAttribute(), and JSProxy::HasPropertyWithHandler().
|
inline |
Definition at line 5047 of file objects-inl.h.
References ABSENT, JSProxy::cast(), JSReceiver::GetPropertyAttribute(), and JSProxy::HasPropertyWithHandler().
bool IsSimpleEnum | ( | ) |
Definition at line 4198 of file objects.cc.
References ASSERT, JSObject::cast(), Map::EnumLength(), HeapObject::GetHeap(), JSReceiver::GetPrototype(), JSObject::HasIndexedInterceptor(), JSObject::HasNamedInterceptor(), Map::kInvalidEnumCache, HeapObject::map(), and JSObject::NumberOfEnumElements().
void LocalLookup | ( | String * | name, |
LookupResult * | result | ||
) |
Definition at line 4267 of file objects.cc.
References ASSERT, JSReceiver::cast(), JSObject::cast(), JSProxy::cast(), String::Equals(), HeapObject::GetHeap(), JSReceiver::GetPrototype(), JSObject::HasNamedInterceptor(), JSReceiver::LocalLookup(), and JSObject::LocalLookupRealNamedProperty().
Referenced by SharedFunctionInfo::CanGenerateInlineConstructor(), JSObject::DefineAccessor(), JSObject::DefineFastAccessor(), JSObject::DeleteProperty(), JSReceiver::GetLocalPropertyAttribute(), JSReceiver::LocalLookup(), JSReceiver::Lookup(), JSObject::LookupAccessor(), v8::internal::RUNTIME_FUNCTION(), JSObject::SetLocalPropertyIgnoreAttributes(), and JSReceiver::SetProperty().
void Lookup | ( | String * | name, |
LookupResult * | result | ||
) |
Definition at line 4309 of file objects.cc.
References JSReceiver::cast(), JSObject::cast(), HeapObject::GetHeap(), JSReceiver::GetPrototype(), and JSReceiver::LocalLookup().
Referenced by JSReceiver::GetPropertyAttributeWithReceiver(), Object::Lookup(), v8::internal::RUNTIME_FUNCTION(), and PolymorphicCodeCache::Update().
MaybeObject * SetElement | ( | uint32_t | index, |
Object * | value, | ||
PropertyAttributes | attributes, | ||
StrictModeFlag | strict_mode, | ||
bool | check_prototype | ||
) |
Definition at line 9859 of file objects.cc.
References JSObject::cast(), JSProxy::cast(), JSObject::SetElement(), and JSProxy::SetElementWithHandler().
|
static |
Definition at line 1893 of file objects.cc.
References CALL_HEAP_FUNCTION, and v8::internal::Object.
Referenced by Scope::LinkModules(), v8::internal::RUNTIME_FUNCTION(), Runtime::SetObjectProperty(), JSReceiver::SetProperty(), JSObject::SetPropertyPostInterceptor(), KeyedStoreIC::Store(), and TEST().
MaybeObject * SetProperty | ( | String * | key, |
Object * | value, | ||
PropertyAttributes | attributes, | ||
StrictModeFlag | strict_mode, | ||
JSReceiver::StoreFromKeyed | store_mode = MAY_BE_STORE_FROM_KEYED |
||
) |
Definition at line 1904 of file objects.cc.
References JSObject::cast(), HeapObject::GetIsolate(), JSReceiver::LocalLookup(), Map::LookupTransition(), HeapObject::map(), and JSReceiver::SetProperty().
MaybeObject * SetProperty | ( | LookupResult * | result, |
String * | key, | ||
Object * | value, | ||
PropertyAttributes | attributes, | ||
StrictModeFlag | strict_mode, | ||
JSReceiver::StoreFromKeyed | store_mode = MAY_BE_STORE_FROM_KEYED |
||
) |
Definition at line 2506 of file objects.cc.
References JSObject::cast(), and JSObject::SetPropertyForResult().
MaybeObject * SetPropertyWithDefinedSetter | ( | JSReceiver * | setter, |
Object * | value | ||
) |
Definition at line 1998 of file objects.cc.
References ARRAY_SIZE, Execution::Call(), Failure::Exception(), and HeapObject::GetIsolate().
Referenced by JSObject::SetPropertyWithCallback().
MaybeObject * SetPrototype | ( | Object * | value, |
bool | skip_hidden_prototypes | ||
) |
Definition at line 9014 of file objects.cc.
References ASSERT, JSReceiver::cast(), JSObject::cast(), Heap::ClearInstanceofCache(), Map::Copy(), FACTORY, HeapObject::GetHeap(), Object::GetPrototype(), JSReceiver::GetPrototype(), Map::GetPrototypeTransition(), Map::is_extensible(), Map::is_hidden_prototype(), Heap::isolate(), HeapObject::map(), v8::internal::NULL, JSObject::OptimizeAsPrototype(), Map::PutPrototypeTransition(), HeapObject::set_map(), HeapObject::Size(), and Isolate::Throw().