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
JSFunction Class Reference

#include <objects.h>

Inheritance diagram for JSFunction:
Collaboration diagram for JSFunction:

Public Member Functions

SharedFunctionInfounchecked_shared ()
 
Contextcontext ()
 
Objectunchecked_context ()
 
void set_context (Object *context)
 
Codecode ()
 
void set_code (Code *code)
 
void ReplaceCode (Code *code)
 
Codeunchecked_code ()
 
bool IsBuiltin ()
 
bool NeedsArgumentsAdaption ()
 
bool IsOptimized ()
 
bool IsOptimizable ()
 
void MarkForLazyRecompilation ()
 
void MarkForParallelRecompilation ()
 
bool IsMarkedForLazyRecompilation ()
 
bool IsMarkedForParallelRecompilation ()
 
bool IsInRecompileQueue ()
 
bool IsInlineable ()
 
FixedArrayliterals ()
 
void set_literals (FixedArray *literals)
 
FixedArrayfunction_bindings ()
 
void set_function_bindings (FixedArray *bindings)
 
Mapinitial_map ()
 
void set_initial_map (Map *value)
 
MUST_USE_RESULT MaybeObject * set_initial_map_and_cache_transitions (Map *value)
 
bool has_initial_map ()
 
bool has_prototype ()
 
bool has_instance_prototype ()
 
Objectprototype ()
 
Objectinstance_prototype ()
 
MUST_USE_RESULT MaybeObject * SetInstancePrototype (Object *value)
 
MUST_USE_RESULT MaybeObject * SetPrototype (Object *value)
 
void RemovePrototype ()
 
bool should_have_prototype ()
 
void SetInstanceClassName (String *name)
 
bool is_compiled ()
 
void PrintName ()
 
void PrintName (FILE *out)
 
void JSFunctionIterateBody (int object_size, ObjectVisitor *v)
 
int NumberOfLiterals ()
 
- Public Member Functions inherited from JSObject
 DECL_ACCESSORS (properties, FixedArray) inline void initialize_properties()
 
bool HasFastProperties ()
 
StringDictionaryproperty_dictionary ()
 
void initialize_elements ()
 
MUST_USE_RESULT MaybeObject * ResetElements ()
 
ElementsKind GetElementsKind ()
 
ElementsAccessorGetElementsAccessor ()
 
bool HasFastSmiElements ()
 
bool HasFastObjectElements ()
 
bool HasFastSmiOrObjectElements ()
 
bool HasFastDoubleElements ()
 
bool HasFastHoleyElements ()
 
bool HasNonStrictArgumentsElements ()
 
bool HasDictionaryElements ()
 
bool HasExternalPixelElements ()
 
bool HasExternalArrayElements ()
 
bool HasExternalByteElements ()
 
bool HasExternalUnsignedByteElements ()
 
bool HasExternalShortElements ()
 
bool HasExternalUnsignedShortElements ()
 
bool HasExternalIntElements ()
 
bool HasExternalUnsignedIntElements ()
 
bool HasExternalFloatElements ()
 
bool HasExternalDoubleElements ()
 
bool HasFastArgumentsElements ()
 
bool HasDictionaryArgumentsElements ()
 
SeededNumberDictionaryelement_dictionary ()
 
void set_map_and_elements (Map *map, FixedArrayBase *value, WriteBarrierMode mode=UPDATE_WRITE_BARRIER)
 
MUST_USE_RESULT MaybeObject * EnsureWritableFastElements ()
 
MUST_USE_RESULT MaybeObject * PrepareElementsForSort (uint32_t limit)
 
MUST_USE_RESULT MaybeObject * PrepareSlowElementsForSort (uint32_t limit)
 
MUST_USE_RESULT MaybeObject * GetPropertyWithCallback (Object *receiver, Object *structure, String *name)
 
MUST_USE_RESULT MaybeObject * SetPropertyForResult (LookupResult *result, String *key, Object *value, PropertyAttributes attributes, StrictModeFlag strict_mode, StoreFromKeyed store_mode)
 
MUST_USE_RESULT MaybeObject * SetPropertyWithFailedAccessCheck (LookupResult *result, String *name, Object *value, bool check_prototype, StrictModeFlag strict_mode)
 
MUST_USE_RESULT MaybeObject * SetPropertyWithCallback (Object *structure, String *name, Object *value, JSObject *holder, StrictModeFlag strict_mode)
 
MUST_USE_RESULT MaybeObject * SetPropertyWithInterceptor (String *name, Object *value, PropertyAttributes attributes, StrictModeFlag strict_mode)
 
MUST_USE_RESULT MaybeObject * SetPropertyPostInterceptor (String *name, Object *value, PropertyAttributes attributes, StrictModeFlag strict_mode, ExtensibilityCheck extensibility_check)
 
int LastAddedFieldIndex ()
 
MUST_USE_RESULT MaybeObject * AddFastPropertyUsingMap (Map *map)
 
MUST_USE_RESULT MaybeObject * SetLocalPropertyIgnoreAttributes (String *key, Object *value, PropertyAttributes attributes)
 
ObjectGetNormalizedProperty (LookupResult *result)
 
ObjectSetNormalizedProperty (LookupResult *result, Object *value)
 
MUST_USE_RESULT MaybeObject * SetNormalizedProperty (String *name, Object *value, PropertyDetails details)
 
MUST_USE_RESULT MaybeObject * DeleteNormalizedProperty (String *name, DeleteMode mode)
 
MUST_USE_RESULT MaybeObject * OptimizeAsPrototype ()
 
InterceptorInfoGetNamedInterceptor ()
 
InterceptorInfoGetIndexedInterceptor ()
 
PropertyAttributes GetPropertyAttributePostInterceptor (JSObject *receiver, String *name, bool continue_search)
 
PropertyAttributes GetPropertyAttributeWithInterceptor (JSObject *receiver, String *name, bool continue_search)
 
PropertyAttributes GetPropertyAttributeWithFailedAccessCheck (Object *receiver, LookupResult *result, String *name, bool continue_search)
 
MUST_USE_RESULT MaybeObject * DefineAccessor (String *name, Object *getter, Object *setter, PropertyAttributes attributes)
 
MUST_USE_RESULT MaybeObject * DefineFastAccessor (String *name, AccessorComponent component, Object *accessor, PropertyAttributes attributes)
 
ObjectLookupAccessor (String *name, AccessorComponent component)
 
MUST_USE_RESULT MaybeObject * DefineAccessor (AccessorInfo *info)
 
MUST_USE_RESULT MaybeObject * GetPropertyWithFailedAccessCheck (Object *receiver, LookupResult *result, String *name, PropertyAttributes *attributes)
 
MUST_USE_RESULT MaybeObject * GetPropertyWithInterceptor (Object *receiver, String *name, PropertyAttributes *attributes)
 
MUST_USE_RESULT MaybeObject * GetPropertyPostInterceptor (Object *receiver, String *name, PropertyAttributes *attributes)
 
MUST_USE_RESULT MaybeObject * GetLocalPropertyPostInterceptor (Object *receiver, String *name, PropertyAttributes *attributes)
 
bool IsDirty ()
 
ObjectBypassGlobalProxy ()
 
MUST_USE_RESULT MaybeObject * SetHiddenProperty (String *key, Object *value)
 
ObjectGetHiddenProperty (String *key)
 
void DeleteHiddenProperty (String *key)
 
bool HasHiddenProperties ()
 
MUST_USE_RESULT MaybeObject * GetIdentityHash (CreationFlag flag)
 
MUST_USE_RESULT MaybeObject * SetIdentityHash (Smi *hash, CreationFlag flag)
 
MUST_USE_RESULT MaybeObject * DeleteProperty (String *name, DeleteMode mode)
 
MUST_USE_RESULT MaybeObject * DeleteElement (uint32_t index, DeleteMode mode)
 
void ValidateElements ()
 
MUST_USE_RESULT MaybeObject * EnsureCanContainHeapObjectElements ()
 
MUST_USE_RESULT MaybeObject * EnsureCanContainElements (Object **elements, uint32_t count, EnsureElementsMode mode)
 
MUST_USE_RESULT MaybeObject * EnsureCanContainElements (FixedArrayBase *elements, uint32_t length, EnsureElementsMode mode)
 
MUST_USE_RESULT MaybeObject * EnsureCanContainElements (Arguments *arguments, uint32_t first_arg, uint32_t arg_count, EnsureElementsMode mode)
 
bool ShouldConvertToSlowElements (int new_capacity)
 
bool ShouldConvertToFastElements ()
 
bool ShouldConvertToFastDoubleElements (bool *has_smi_only_elements)
 
bool HasElementWithReceiver (JSReceiver *receiver, uint32_t index)
 
LocalElementType HasLocalElement (uint32_t index)
 
bool HasElementWithInterceptor (JSReceiver *receiver, uint32_t index)
 
MUST_USE_RESULT MaybeObject * SetFastElement (uint32_t index, Object *value, StrictModeFlag strict_mode, bool check_prototype)
 
MUST_USE_RESULT MaybeObject * SetDictionaryElement (uint32_t index, Object *value, PropertyAttributes attributes, StrictModeFlag strict_mode, bool check_prototype, SetPropertyMode set_mode=SET_PROPERTY)
 
MUST_USE_RESULT MaybeObject * SetFastDoubleElement (uint32_t index, Object *value, StrictModeFlag strict_mode, bool check_prototype=true)
 
MUST_USE_RESULT MaybeObject * SetElement (uint32_t index, Object *value, PropertyAttributes attributes, StrictModeFlag strict_mode, bool check_prototype=true, SetPropertyMode set_mode=SET_PROPERTY)
 
MUST_USE_RESULT MaybeObject * GetElementWithInterceptor (Object *receiver, uint32_t index)
 
MUST_USE_RESULT MaybeObject * SetFastElementsCapacityAndLength (int capacity, int length, SetFastElementsCapacitySmiMode smi_mode)
 
MUST_USE_RESULT MaybeObject * SetFastDoubleElementsCapacityAndLength (int capacity, int length)
 
bool HasNamedInterceptor ()
 
bool HasIndexedInterceptor ()
 
bool HasRealNamedProperty (String *key)
 
bool HasRealElementProperty (uint32_t index)
 
bool HasRealNamedCallbackProperty (String *key)
 
int GetHeaderSize ()
 
int GetInternalFieldCount ()
 
int GetInternalFieldOffset (int index)
 
ObjectGetInternalField (int index)
 
void SetInternalField (int index, Object *value)
 
void SetInternalField (int index, Smi *value)
 
void LocalLookupRealNamedProperty (String *name, LookupResult *result)
 
void LookupRealNamedProperty (String *name, LookupResult *result)
 
void LookupRealNamedPropertyInPrototypes (String *name, LookupResult *result)
 
MUST_USE_RESULT MaybeObject * SetElementWithCallbackSetterInPrototypes (uint32_t index, Object *value, bool *found, StrictModeFlag strict_mode)
 
void LookupCallbackProperty (String *name, LookupResult *result)
 
int NumberOfLocalProperties (PropertyAttributes filter=NONE)
 
void GetLocalPropertyNames (FixedArray *storage, int index)
 
int NumberOfLocalElements (PropertyAttributes filter)
 
int NumberOfEnumElements ()
 
int GetLocalElementKeys (FixedArray *storage, PropertyAttributes filter)
 
int GetEnumElementKeys (FixedArray *storage)
 
MUST_USE_RESULT MaybeObject * AddFastPropertyUsingMap (Map *new_map, String *name, Object *value, int field_index)
 
MUST_USE_RESULT MaybeObject * AddConstantFunctionProperty (String *name, JSFunction *function, PropertyAttributes attributes)
 
MUST_USE_RESULT MaybeObject * ReplaceSlowProperty (String *name, Object *value, PropertyAttributes attributes)
 
MUST_USE_RESULT MaybeObject * GetElementsTransitionMap (Isolate *isolate, ElementsKind elements_kind)
 
MUST_USE_RESULT MaybeObject * GetElementsTransitionMapSlow (ElementsKind elements_kind)
 
MUST_USE_RESULT MaybeObject * TransitionElementsKind (ElementsKind to_kind)
 
MUST_USE_RESULT MaybeObject * ConvertTransitionToMapTransition (int transition_index, String *name, Object *new_value, PropertyAttributes attributes)
 
MUST_USE_RESULT MaybeObject * ConvertDescriptorToField (String *name, Object *new_value, PropertyAttributes attributes)
 
MUST_USE_RESULT MaybeObject * AddFastProperty (String *name, Object *value, PropertyAttributes attributes, StoreFromKeyed store_mode=MAY_BE_STORE_FROM_KEYED)
 
MUST_USE_RESULT MaybeObject * AddSlowProperty (String *name, Object *value, PropertyAttributes attributes)
 
MUST_USE_RESULT MaybeObject * AddProperty (String *name, Object *value, PropertyAttributes attributes, StrictModeFlag strict_mode, StoreFromKeyed store_mode=MAY_BE_STORE_FROM_KEYED, ExtensibilityCheck extensibility_check=PERFORM_EXTENSIBILITY_CHECK)
 
MUST_USE_RESULT MaybeObject * NormalizeProperties (PropertyNormalizationMode mode, int expected_additional_properties)
 
MUST_USE_RESULT MaybeObject * NormalizeElements ()
 
MUST_USE_RESULT MaybeObject * UpdateMapCodeCache (String *name, Code *code)
 
MUST_USE_RESULT MaybeObject * TransformToFastProperties (int unused_property_fields)
 
ObjectFastPropertyAt (int index)
 
ObjectFastPropertyAtPut (int index, Object *value)
 
int GetInObjectPropertyOffset (int index)
 
ObjectInObjectPropertyAt (int index)
 
ObjectInObjectPropertyAtPut (int index, Object *value, WriteBarrierMode mode=UPDATE_WRITE_BARRIER)
 
void InitializeBody (Map *map, Object *pre_allocated_value, Object *filler_value)
 
bool ReferencesObject (Object *obj)
 
MUST_USE_RESULT MaybeObject * PreventExtensions ()
 
void JSObjectShortPrint (StringStream *accumulator)
 
void PrintElementsTransition (FILE *file, ElementsKind from_kind, FixedArrayBase *from_elements, ElementsKind to_kind, FixedArrayBase *to_elements)
 
ObjectSlowReverseLookup (Object *value)
 
bool TooManyFastProperties (int properties, StoreFromKeyed store_mode)
 
 STATIC_CHECK (kHeaderSize==Internals::kJSObjectHeaderSize)
 
- Public Member Functions inherited from JSReceiver
MUST_USE_RESULT MaybeObject * SetProperty (String *key, Object *value, PropertyAttributes attributes, StrictModeFlag strict_mode, StoreFromKeyed store_from_keyed=MAY_BE_STORE_FROM_KEYED)
 
MUST_USE_RESULT MaybeObject * SetProperty (LookupResult *result, String *key, Object *value, PropertyAttributes attributes, StrictModeFlag strict_mode, StoreFromKeyed store_from_keyed=MAY_BE_STORE_FROM_KEYED)
 
MUST_USE_RESULT MaybeObject * SetPropertyWithDefinedSetter (JSReceiver *setter, Object *value)
 
MUST_USE_RESULT MaybeObject * DeleteProperty (String *name, DeleteMode mode)
 
MUST_USE_RESULT MaybeObject * DeleteElement (uint32_t index, DeleteMode mode)
 
MUST_USE_RESULT MaybeObject * SetElement (uint32_t index, Object *value, PropertyAttributes attributes, StrictModeFlag strict_mode, bool check_prototype)
 
bool IsSimpleEnum ()
 
Stringclass_name ()
 
Stringconstructor_name ()
 
PropertyAttributes GetPropertyAttribute (String *name)
 
PropertyAttributes GetPropertyAttributeWithReceiver (JSReceiver *receiver, String *name)
 
PropertyAttributes GetLocalPropertyAttribute (String *name)
 
bool HasProperty (String *name)
 
bool HasLocalProperty (String *name)
 
bool HasElement (uint32_t index)
 
ObjectGetPrototype ()
 
ObjectGetConstructor ()
 
MUST_USE_RESULT MaybeObject * SetPrototype (Object *value, bool skip_hidden_prototypes)
 
MUST_USE_RESULT MaybeObject * GetIdentityHash (CreationFlag flag)
 
void LocalLookup (String *name, LookupResult *result)
 
void Lookup (String *name, LookupResult *result)
 
- Public Member Functions inherited from HeapObject
Mapmap ()
 
void set_map (Map *value)
 
void set_map_no_write_barrier (Map *value)
 
MapWord map_word ()
 
void set_map_word (MapWord map_word)
 
HeapGetHeap ()
 
IsolateGetIsolate ()
 
Address address ()
 
void Iterate (ObjectVisitor *v)
 
void IterateBody (InstanceType type, int object_size, ObjectVisitor *v)
 
int Size ()
 
int SizeFromMap (Map *map)
 
WriteBarrierMode GetWriteBarrierMode (const AssertNoAllocation &)
 
void HeapObjectShortPrint (StringStream *accumulator)
 
 STATIC_CHECK (kMapOffset==Internals::kHeapObjectMapOffset)
 
- Public Member Functions inherited from Object
bool IsObject ()
 
bool IsFixedArrayBase ()
 
bool IsInstanceOf (FunctionTemplateInfo *type)
 
bool IsStruct ()
 
 INLINE (bool IsSpecObject())
 
 INLINE (bool IsSpecFunction())
 
 INLINE (bool IsUndefined())
 
 INLINE (bool IsNull())
 
 INLINE (bool IsTheHole())
 
 INLINE (bool IsTrue())
 
 INLINE (bool IsFalse())
 
bool IsArgumentsMarker ()
 
bool NonFailureIsHeapObject ()
 
bool IsFiller ()
 
double Number ()
 
bool IsNaN ()
 
bool HasValidElements ()
 
bool HasSpecificClassOf (String *name)
 
MUST_USE_RESULT MaybeObject * ToObject ()
 
ObjectToBoolean ()
 
MUST_USE_RESULT MaybeObject * ToObject (Context *native_context)
 
MUST_USE_RESULT MaybeObject * ToSmi ()
 
void Lookup (String *name, LookupResult *result)
 
MUST_USE_RESULT MaybeObject * GetProperty (String *key)
 
MUST_USE_RESULT MaybeObject * GetProperty (String *key, PropertyAttributes *attributes)
 
MUST_USE_RESULT MaybeObject * GetPropertyWithReceiver (Object *receiver, String *key, PropertyAttributes *attributes)
 
MUST_USE_RESULT MaybeObject * GetProperty (Object *receiver, LookupResult *result, String *key, PropertyAttributes *attributes)
 
MUST_USE_RESULT MaybeObject * GetPropertyWithDefinedGetter (Object *receiver, JSReceiver *getter)
 
MUST_USE_RESULT MaybeObject * GetElement (uint32_t index)
 
ObjectGetElementNoExceptionThrown (uint32_t index)
 
MUST_USE_RESULT MaybeObject * GetElementWithReceiver (Object *receiver, uint32_t index)
 
ObjectGetPrototype ()
 
MUST_USE_RESULT MaybeObject * GetHash (CreationFlag flag)
 
bool SameValue (Object *other)
 
bool ToArrayIndex (uint32_t *index)
 
bool IsStringObjectWithCharacterAt (uint32_t index)
 
void VerifyApiCallResultType ()
 
void ShortPrint ()
 
void ShortPrint (FILE *out)
 
void ShortPrint (StringStream *accumulator)
 

Static Public Member Functions

static bool EnsureCompiled (Handle< JSFunction > function, ClearExceptionFlag flag)
 
static bool CompileLazy (Handle< JSFunction > function, ClearExceptionFlag flag)
 
static bool CompileOptimized (Handle< JSFunction > function, BailoutId osr_ast_id, ClearExceptionFlag flag)
 
static JSFunctioncast (Object *obj)
 
static ContextNativeContextFromLiterals (FixedArray *literals)
 
- Static Public Member Functions inherited from JSObject
static Handle< ObjectSetLocalPropertyIgnoreAttributes (Handle< JSObject > object, Handle< String > key, Handle< Object > value, PropertyAttributes attributes)
 
static bool TryTransitionToField (Handle< JSObject > object, Handle< String > key)
 
static void AddFastPropertyUsingMap (Handle< JSObject > object, Handle< Map > map)
 
static Handle< ObjectSetNormalizedProperty (Handle< JSObject > object, Handle< String > key, Handle< Object > value, PropertyDetails details)
 
static void DefineAccessor (Handle< JSObject > object, Handle< String > name, Handle< Object > getter, Handle< Object > setter, PropertyAttributes attributes)
 
static Handle< ObjectSetHiddenProperty (Handle< JSObject > obj, Handle< String > key, Handle< Object > value)
 
static int GetIdentityHash (Handle< JSObject > obj)
 
static Handle< ObjectDeleteProperty (Handle< JSObject > obj, Handle< String > name)
 
static Handle< ObjectDeleteElement (Handle< JSObject > obj, uint32_t index)
 
static int NewElementsCapacity (int old_capacity)
 
static Handle< ObjectSetOwnElement (Handle< JSObject > object, uint32_t index, Handle< Object > value, StrictModeFlag strict_mode)
 
static MUST_USE_RESULT Handle
< Object
SetElement (Handle< JSObject > object, uint32_t index, Handle< Object > value, PropertyAttributes attr, StrictModeFlag strict_mode, SetPropertyMode set_mode=SET_PROPERTY)
 
static Handle< MapGetElementsTransitionMap (Handle< JSObject > object, ElementsKind to_kind)
 
static Handle< ObjectTransitionElementsKind (Handle< JSObject > object, ElementsKind to_kind)
 
static void NormalizeProperties (Handle< JSObject > object, PropertyNormalizationMode mode, int expected_additional_properties)
 
static Handle
< SeededNumberDictionary
NormalizeElements (Handle< JSObject > object)
 
static void UpdateMapCodeCache (Handle< JSObject > object, Handle< String > name, Handle< Code > code)
 
static void TransformToFastProperties (Handle< JSObject > object, int unused_property_fields)
 
static JSObjectcast (Object *obj)
 
static Handle< ObjectPreventExtensions (Handle< JSObject > object)
 
- Static Public Member Functions inherited from JSReceiver
static JSReceivercast (Object *obj)
 
static Handle< ObjectSetProperty (Handle< JSReceiver > object, Handle< String > key, Handle< Object > value, PropertyAttributes attributes, StrictModeFlag strict_mode)
 
- Static Public Member Functions inherited from HeapObject
static HeapObjectFromAddress (Address address)
 
static Object ** RawField (HeapObject *obj, int offset)
 
static HeapObjectcast (Object *obj)
 
- Static Public Member Functions inherited from Object
static Handle< ObjectGetProperty (Handle< Object > object, Handle< Object > receiver, LookupResult *result, Handle< String > key, PropertyAttributes *attributes)
 
static Handle< ObjectGetElement (Handle< Object > object, uint32_t index)
 
static Objectcast (Object *value)
 

Static Public Attributes

static const int kCodeEntryOffset = JSObject::kHeaderSize
 
static const int kPrototypeOrInitialMapOffset
 
static const int kSharedFunctionInfoOffset
 
static const int kContextOffset = kSharedFunctionInfoOffset + kPointerSize
 
static const int kLiteralsOffset = kContextOffset + kPointerSize
 
static const int kNonWeakFieldsEndOffset = kLiteralsOffset + kPointerSize
 
static const int kNextFunctionLinkOffset = kNonWeakFieldsEndOffset
 
static const int kSize = kNextFunctionLinkOffset + kPointerSize
 
static const int kLiteralsPrefixSize = 1
 
static const int kLiteralNativeContextIndex = 0
 
static const int kBoundFunctionIndex = 0
 
static const int kBoundThisIndex = 1
 
static const int kBoundArgumentsStartIndex = 2
 
- Static Public Attributes inherited from JSObject
static const uint32_t kMaxElementCount = 0xffffffffu
 
static const uint32_t kMaxGap = 1024
 
static const int kMaxUncheckedFastElementsLength = 5000
 
static const int kMaxUncheckedOldFastElementsLength = 500
 
static const int kInitialMaxFastElementArray = 100000
 
static const int kFastPropertiesSoftLimit = 12
 
static const int kMaxFastProperties = 64
 
static const int kMaxInstanceSize = 255 * kPointerSize
 
static const int kFieldsAdded = 3
 
static const int kPropertiesOffset = HeapObject::kHeaderSize
 
static const int kElementsOffset = kPropertiesOffset + kPointerSize
 
static const int kHeaderSize = kElementsOffset + kPointerSize
 
- 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
 

Additional Inherited Members

- Public Types inherited from JSObject
enum  LocalElementType {
  UNDEFINED_ELEMENT, INTERCEPTED_ELEMENT, STRING_CHARACTER_ELEMENT, FAST_ELEMENT,
  DICTIONARY_ELEMENT
}
 
enum  SetFastElementsCapacitySmiMode { kAllowSmiElements, kForceSmiElements, kDontAllowSmiElements }
 
- Public Types inherited from JSReceiver
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 }
 
- Protected Member Functions inherited from JSReceiver
SmiGenerateIdentityHash ()
 
- Protected Member Functions inherited from HeapObject
void IteratePointers (ObjectVisitor *v, int start, int end)
 
void IteratePointer (ObjectVisitor *v, int offset)
 

Detailed Description

Definition at line 6024 of file objects.h.

Member Function Documentation

static JSFunction* cast ( Object obj)
inlinestatic

Referenced by Context::AddOptimizedFunction(), JSObject::AddProperty(), Heap::AllocateArgumentsObject(), Heap::AllocateFunction(), TypeFeedbackOracle::CanRetainOtherContext(), JSReceiver::class_name(), Context::closure(), Call::ComputeGlobalTarget(), Isolate::ComputeLocation(), CallICBase::ComputeMonomorphicStub(), JSReceiver::constructor_name(), Map::CopyWithPreallocatedFieldDescriptors(), Date::DateTimeConfigurationChangeNotification(), BASE_EMBEDDED< Visitor >::GetConstantFunction(), DescriptorArray::GetConstantFunction(), BASE_EMBEDDED< Visitor >::GetConstantFunctionFromMap(), V8HeapExplorer::GetConstructorName(), OptimizedFrame::GetDeoptimizationData(), JavaScriptFrame::GetFunctions(), JSObject::GetIndexedInterceptor(), v8::internal::GetKeysInFixedArrayFor(), MessageHandler::GetMessage(), JSObject::GetNamedInterceptor(), JavaScriptFrame::GetNumberOfIncomingArguments(), Execution::InstantiateFunction(), JSObject::IsDirty(), Object::IsInstanceOf(), JSObject::JSObjectShortPrint(), StaticMarkingVisitor< StaticVisitor >::MarkInlinedFunctionsCode(), Deoptimizer::MaterializeHeapObjects(), Isolate::MayIndexedAccess(), Isolate::MayNamedAccess(), Context::native_context(), Factory::NewError(), RuntimeProfiler::OptimizeNow(), JavaScriptFrame::Print(), ArgumentsAdaptorFrame::Print(), Isolate::PrintCurrentStackTrace(), StringStream::PrintFunction(), StringStream::PrintSecurityTokenIfChanged(), JavaScriptFrame::PrintTop(), JSObject::ReferencesObject(), Heap::ReinitializeJSReceiver(), Context::RemoveOptimizedFunction(), Deoptimizer::ReplaceCodeForRelatedFunctions(), Isolate::ReportFailedAccessCheck(), Script::Run(), v8::internal::RUNTIME_FUNCTION(), JSFunction::set_initial_map_and_cache_transitions(), JavaScriptFrame::Summarize(), TEST(), StringDictionary::TransformPropertiesToFastFor(), JavaScriptFrame::unchecked_code(), Deoptimizer::VisitAllOptimizedFunctionsForContext(), and StaticMarkingVisitor< StaticVisitor >::VisitJSFunction().

bool CompileLazy ( Handle< JSFunction function,
ClearExceptionFlag  flag 
)
static

Definition at line 7643 of file objects.cc.

References ASSERT.

Referenced by JSFunction::EnsureCompiled(), and v8::internal::RUNTIME_FUNCTION().

bool CompileOptimized ( Handle< JSFunction function,
BailoutId  osr_ast_id,
ClearExceptionFlag  flag 
)
static

Definition at line 7659 of file objects.cc.

References CompilationInfo::SetOptimizing().

Referenced by v8::internal::RUNTIME_FUNCTION().

bool EnsureCompiled ( Handle< JSFunction function,
ClearExceptionFlag  flag 
)
static

Definition at line 7668 of file objects.cc.

References JSFunction::CompileLazy().

Referenced by v8::internal::RUNTIME_FUNCTION().

FixedArray * function_bindings ( )
inline

Definition at line 4506 of file objects-inl.h.

References ASSERT.

Referenced by v8::internal::RUNTIME_FUNCTION().

bool has_instance_prototype ( )
inline

Definition at line 4456 of file objects-inl.h.

Referenced by Heap::AllocateInitialMap().

bool has_prototype ( )
inline

Definition at line 4461 of file objects-inl.h.

References Map::has_non_instance_prototype(), and HeapObject::map().

Object * instance_prototype ( )
inline

Definition at line 4466 of file objects-inl.h.

References ASSERT.

Referenced by Heap::AllocateInitialMap().

bool IsBuiltin ( )
inline

Definition at line 4302 of file objects-inl.h.

Referenced by JSFunction::IsInlineable(), and v8::internal::RUNTIME_FUNCTION().

bool IsInlineable ( )

Definition at line 7674 of file objects.cc.

References JSFunction::IsBuiltin(), Code::kind(), and Code::optimizable().

bool IsInRecompileQueue ( )
inline
bool IsMarkedForLazyRecompilation ( )
inline
bool IsMarkedForParallelRecompilation ( )
inline
bool IsOptimizable ( )
inline

Definition at line 4318 of file objects-inl.h.

References v8::internal::code().

bool IsOptimized ( )
inline
void JSFunctionIterateBody ( int  object_size,
ObjectVisitor *  v 
)
FixedArray * literals ( )
inline

Definition at line 4494 of file objects-inl.h.

References ASSERT.

Context * NativeContextFromLiterals ( FixedArray literals)
static
bool NeedsArgumentsAdaption ( )
inline

Definition at line 4307 of file objects-inl.h.

References SharedFunctionInfo::kDontAdaptArgumentsSentinel.

int NumberOfLiterals ( )
inline

Definition at line 4522 of file objects-inl.h.

References ASSERT.

void PrintName ( )
inline

Definition at line 6153 of file objects.h.

Referenced by JavaScriptFrame::PrintTop().

void PrintName ( FILE *  out)

Definition at line 7788 of file objects.cc.

References v8::internal::PrintF().

Object * prototype ( )
inline

Definition at line 4475 of file objects-inl.h.

References ASSERT, and HeapObject::map().

void ReplaceCode ( Code code)
inline
void set_context ( Object context)
inline

Definition at line 4395 of file objects-inl.h.

References ASSERT, HeapObject::GetHeap(), WRITE_BARRIER, and WRITE_FIELD.

Referenced by Heap::ReinitializeJSReceiver().

void set_function_bindings ( FixedArray bindings)
inline

Definition at line 4512 of file objects-inl.h.

References ASSERT, HeapObject::GetHeap(), and HeapObject::map().

void set_initial_map ( Map value)
inline

Definition at line 4410 of file objects-inl.h.

Referenced by Heap::AllocateJSObject().

void set_literals ( FixedArray literals)
inline

Definition at line 4500 of file objects-inl.h.

References ASSERT.

void SetInstanceClassName ( String name)

Definition at line 7783 of file objects.cc.

bool should_have_prototype ( )
inline

Definition at line 4484 of file objects-inl.h.

References Map::function_with_prototype(), and HeapObject::map().

Referenced by JSFunction::SetPrototype().

Code * unchecked_code ( )
inline

Definition at line 4345 of file objects-inl.h.

References FIELD_ADDR, and Code::GetObjectFromEntryAddress().

Object * unchecked_context ( )
inline

Definition at line 4384 of file objects-inl.h.

References READ_FIELD.

Referenced by StringStream::PrintSecurityTokenIfChanged().

SharedFunctionInfo * unchecked_shared ( )
inline

Definition at line 4389 of file objects-inl.h.

References READ_FIELD.

Field Documentation

const int kBoundArgumentsStartIndex = 2
static

Definition at line 6200 of file objects.h.

Referenced by v8::internal::RUNTIME_FUNCTION().

const int kBoundFunctionIndex = 0
static

Definition at line 6198 of file objects.h.

Referenced by v8::internal::RUNTIME_FUNCTION().

const int kBoundThisIndex = 1
static

Definition at line 6199 of file objects.h.

Referenced by v8::internal::RUNTIME_FUNCTION().

const int kContextOffset = kSharedFunctionInfoOffset + kPointerSize
static

Definition at line 6187 of file objects.h.

const int kLiteralNativeContextIndex = 0
static
const int kLiteralsOffset = kContextOffset + kPointerSize
static

Definition at line 6188 of file objects.h.

const int kLiteralsPrefixSize = 1
static

Definition at line 6194 of file objects.h.

Referenced by Factory::NewSharedFunctionInfo().

const int kNextFunctionLinkOffset = kNonWeakFieldsEndOffset
static

Definition at line 6190 of file objects.h.

const int kPrototypeOrInitialMapOffset
static
const int kSharedFunctionInfoOffset
static
Initial value:

Definition at line 6185 of file objects.h.

const int kSize = kNextFunctionLinkOffset + kPointerSize
static

Definition at line 6191 of file objects.h.

Referenced by Factory::BecomeJSFunction(), and JSObject::GetHeaderSize().


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