V8 API Reference, 7.2.502.16 (for Deno 0.2.4)
v8::internal::SharedFunctionInfo Class Reference
Inheritance diagram for v8::internal::SharedFunctionInfo:
v8::internal::HeapObject v8::internal::NeverReadOnlySpaceObject v8::internal::Object

Classes

class  GlobalIterator
 
class  ScriptIterator
 

Public Types

typedef FixedBodyDescriptor< kStartOfPointerFieldsOffset, kEndOfTaggedFieldsOffset, kAlignedSize > BodyDescriptor
 
- Public Types inherited from v8::internal::Object
enum  Conversion { kToNumber, kToNumeric }
 

Public Member Functions

String Name () const
 
void SetName (String name)
 
Code GetCode () const
 
AbstractCode abstract_code ()
 
bool IsInterpreted () const
 
V8_EXPORT_PRIVATE int EndPosition () const
 
V8_EXPORT_PRIVATE int StartPosition () const
 
V8_EXPORT_PRIVATE void SetPosition (int start_position, int end_position)
 
bool HasOuterScopeInfo () const
 
ScopeInfo GetOuterScopeInfo () const
 
bool HasFeedbackMetadata () const
 
bool is_compiled () const
 
uint16_t GetLength () const
 
bool HasLength () const
 
void set_length (int value)
 
void DontAdaptArguments ()
 
bool IsApiFunction () const
 
FunctionTemplateInfo * get_api_func_data ()
 
void set_api_func_data (FunctionTemplateInfo *data)
 
bool HasBytecodeArray () const
 
BytecodeArray GetBytecodeArray () const
 
void set_bytecode_array (BytecodeArray bytecode)
 
Code InterpreterTrampoline () const
 
bool HasInterpreterData () const
 
InterpreterData * interpreter_data () const
 
void set_interpreter_data (InterpreterData *interpreter_data)
 
BytecodeArray GetDebugBytecodeArray () const
 
void SetDebugBytecodeArray (BytecodeArray bytecode)
 
bool HasAsmWasmData () const
 
AsmWasmData * asm_wasm_data () const
 
void set_asm_wasm_data (AsmWasmData *data)
 
bool HasBuiltinId () const
 
int builtin_id () const
 
void set_builtin_id (int builtin_id)
 
bool HasUncompiledData () const
 
UncompiledData * uncompiled_data () const
 
void set_uncompiled_data (UncompiledData *data)
 
bool HasUncompiledDataWithPreParsedScope () const
 
UncompiledDataWithPreParsedScope * uncompiled_data_with_pre_parsed_scope () const
 
void set_uncompiled_data_with_pre_parsed_scope (UncompiledDataWithPreParsedScope *data)
 
bool HasUncompiledDataWithoutPreParsedScope () const
 
bool HasWasmExportedFunctionData () const
 
WasmExportedFunctionData * wasm_exported_function_data () const
 
void set_wasm_exported_function_data (WasmExportedFunctionData *data)
 
void ClearPreParsedScopeData ()
 
bool HasBuiltinFunctionId ()
 
BuiltinFunctionId builtin_function_id ()
 
void set_builtin_function_id (BuiltinFunctionId id)
 
 STATIC_ASSERT ((std::is_same< std::underlying_type< BuiltinFunctionId >::type, uint8_t >::value))
 
bool HasInferredName ()
 
String inferred_name ()
 
V8_EXPORT_PRIVATE int FunctionLiteralId (Isolate *isolate) const
 
bool HasBreakInfo () const
 
bool BreakAtEntry () const
 
bool HasCoverageInfo () const
 
CoverageInfo GetCoverageInfo () const
 
String DebugName ()
 
bool PassesFilter (const char *raw_filter)
 
Object * script () const
 
void set_script (Object *script)
 
bool HasDebugInfo () const
 
DebugInfo * GetDebugInfo () const
 
void SetDebugInfo (DebugInfo *debug_info)
 
int function_token_position () const
 
bool HasSharedName () const
 
LanguageMode language_mode () const
 
void set_language_mode (LanguageMode language_mode)
 
FunctionKind kind () const
 
void clear_padding ()
 
void UpdateFunctionMapIndex ()
 
bool optimization_disabled () const
 
BailoutReason disable_optimization_reason () const
 
void DisableOptimization (BailoutReason reason)
 
bool HasSourceCode () const
 
bool IsSubjectToDebugging ()
 
bool IsUserJavaScript ()
 
bool CanDiscardCompiled () const
 
bool IsInlineable ()
 
int SourceSize ()
 
bool has_simple_parameters ()
 
void SetExpectedNofPropertiesFromEstimate (FunctionLiteral *literal)
 
void SetFunctionTokenPosition (int function_token_position, int start_position)
 
bool construct_as_builtin () const
 
void CalculateConstructAsBuiltin ()
 
 STATIC_ASSERT (kMaximumFunctionTokenOffset+1==kFunctionTokenOutOfRange)
 
 DEFINE_FIELD_OFFSET_CONSTANTS (HeapObject::kHeaderSize, SHARED_FUNCTION_INFO_FIELDS) static const int kAlignedSize
 
 STATIC_ASSERT (BailoutReason::kLastErrorMessage<=DisabledOptimizationReasonBits::kMax)
 
 STATIC_ASSERT (kLastFunctionKind<=FunctionKindBits::kMax)
 
bool needs_home_object () const
 
- Public Member Functions inherited from v8::internal::HeapObject
Map map () const
 
void set_map (Map value)
 
ObjectSlot map_slot ()
 
void set_map_no_write_barrier (Map value)
 
Map synchronized_map () const
 
MapWord synchronized_map_word () const
 
void synchronized_set_map (Map value)
 
void synchronized_set_map_word (MapWord map_word)
 
void set_map_after_allocation (Map value, WriteBarrierMode mode=UPDATE_WRITE_BARRIER)
 
MapWord map_word () const
 
void set_map_word (MapWord map_word)
 
ReadOnlyRoots GetReadOnlyRoots () const
 
V8_INLINE bool IsExternal (Isolate *isolate) const
 
V8_INLINE bool IsNullOrUndefined (Isolate *isolate) const
 
V8_INLINE bool IsNullOrUndefined (ReadOnlyRoots roots) const
 
V8_INLINE bool IsNullOrUndefined () const
 
Address address () const
 
void Iterate (ObjectVisitor *v)
 
template<typename ObjectVisitor >
void IterateFast (ObjectVisitor *v)
 
void IterateBody (ObjectVisitor *v)
 
void IterateBody (Map map, int object_size, ObjectVisitor *v)
 
template<typename ObjectVisitor >
void IterateBodyFast (ObjectVisitor *v)
 
template<typename ObjectVisitor >
void IterateBodyFast (Map map, int object_size, ObjectVisitor *v)
 
bool IsValidSlot (Map map, int offset)
 
int Size () const
 
int SizeFromMap (Map map) const
 
ObjectSlot RawField (int byte_offset) const
 
MaybeObjectSlot RawMaybeWeakField (int byte_offset) const
 
WriteBarrierMode GetWriteBarrierMode (const DisallowHeapAllocation &promise)
 
void HeapObjectShortPrint (std::ostream &os)
 
bool NeedsRehashing () const
 
bool CanBeRehashed () const
 
void RehashBasedOnMap (Isolate *isolate)
 
 STATIC_ASSERT (kMapOffset==Internals::kHeapObjectMapOffset)
 
Address GetFieldAddress (int field_offset) const
 
- Public Member Functions inherited from v8::internal::Object
bool IsObject () const
 
Address ptr () const
 
V8_INLINE bool IsExternal (Isolate *isolate) const
 
V8_INLINE bool IsNullOrUndefined (Isolate *isolate) const
 
V8_INLINE bool IsNullOrUndefined (ReadOnlyRoots roots) const
 
V8_INLINE bool IsNullOrUndefined () const
 
V8_INLINE bool IsSmallOrderedHashTable () const
 
double Number () const
 
V8_INLINE bool IsNaN () const
 
V8_INLINE bool IsMinusZero () const
 
V8_EXPORT_PRIVATE bool ToInt32 (int32_t *value)
 
bool ToUint32 (uint32_t *value) const
 
Representation OptimalRepresentation ()
 
ElementsKind OptimalElementsKind ()
 
bool FitsRepresentation (Representation representation)
 
bool KeyEquals (Object *other)
 
bool FilterKey (PropertyFilter filter)
 
Handle< FieldType > OptimalType (Isolate *isolate, Representation representation)
 
bool HasValidElements ()
 
bool BooleanValue (Isolate *isolate)
 
bool StrictEquals (Object *that)
 
Object * GetHash ()
 
Smi GetOrCreateHash (Isolate *isolate)
 
V8_EXPORT_PRIVATE bool SameValue (Object *other)
 
bool SameValueZero (Object *other)
 
bool ToArrayLength (uint32_t *index) const
 
V8_WARN_UNUSED_RESULT bool ToArrayIndex (uint32_t *index) const
 
bool IterationHasObservableEffects ()
 
void VerifyApiCallResultType ()
 
void ShortPrint (FILE *out=stdout)
 
void ShortPrint (StringStream *accumulator)
 
void ShortPrint (std::ostream &os)
 
void Print ()
 
void Print (std::ostream &os)
 
- Public Member Functions inherited from v8::internal::NeverReadOnlySpaceObject
Heap * GetHeap () const
 
Isolate * GetIsolate () const
 

Static Public Member Functions

static V8_EXPORT_PRIVATE void SetScript (Handle< SharedFunctionInfo > shared, Handle< Object > script_object, int function_literal_id, bool reset_preparsed_scope_data=true)
 
static Handle< Object > GetSourceCode (Handle< SharedFunctionInfo > shared)
 
static Handle< Object > GetSourceCodeHarmony (Handle< SharedFunctionInfo > shared)
 
static void DiscardCompiled (Isolate *isolate, Handle< SharedFunctionInfo > shared_info)
 
static void InitFromFunctionLiteral (Handle< SharedFunctionInfo > shared_info, FunctionLiteral *lit, bool is_toplevel)
 
- Static Public Member Functions inherited from v8::internal::HeapObject
static HeapObject * FromAddress (Address address)
 
static ObjectSlot RawField (const HeapObject *obj, int offset)
 
static MaybeObjectSlot RawMaybeWeakField (HeapObject *obj, int offset)
 
static AllocationAlignment RequiredAlignment (Map map)
 
- Static Public Member Functions inherited from v8::internal::Object
V8_INLINE static V8_WARN_UNUSED_RESULT Maybe< bool > IsArray (Handle< Object > object)
 
static Handle< Object > NewStorageFor (Isolate *isolate, Handle< Object > object, Representation representation)
 
static Handle< Object > WrapForRead (Isolate *isolate, Handle< Object > object, Representation representation)
 
static V8_WARN_UNUSED_RESULT Maybe< ComparisonResult > Compare (Isolate *isolate, Handle< Object > x, Handle< Object > y)
 
static V8_WARN_UNUSED_RESULT Maybe< bool > Equals (Isolate *isolate, Handle< Object > x, Handle< Object > y)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< JSReceiver > ToObject (Isolate *isolate, Handle< Object > object, const char *method_name=nullptr)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< JSReceiver > ToObject (Isolate *isolate, Handle< Object > object, Handle< Context > native_context, const char *method_name=nullptr)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< JSReceiver > ConvertReceiver (Isolate *isolate, Handle< Object > object)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Name > ToName (Isolate *isolate, Handle< Object > input)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > ToPrimitive (Handle< Object > input, ToPrimitiveHint hint=ToPrimitiveHint::kDefault)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > ToNumber (Isolate *isolate, Handle< Object > input)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > ToNumeric (Isolate *isolate, Handle< Object > input)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > ToInteger (Isolate *isolate, Handle< Object > input)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > ToInt32 (Isolate *isolate, Handle< Object > input)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > ToUint32 (Isolate *isolate, Handle< Object > input)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< String > ToString (Isolate *isolate, Handle< Object > input)
 
static Handle< String > NoSideEffectsToString (Isolate *isolate, Handle< Object > input)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > ToPropertyKey (Isolate *isolate, Handle< Object > value)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > ToLength (Isolate *isolate, Handle< Object > input)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > ToIndex (Isolate *isolate, Handle< Object > input, MessageTemplate error_index)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > GetMethod (Handle< JSReceiver > receiver, Handle< Name > name)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< FixedArray > CreateListFromArrayLike (Isolate *isolate, Handle< Object > object, ElementTypes element_types)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > GetLengthFromArrayLike (Isolate *isolate, Handle< JSReceiver > object)
 
static Handle< String > TypeOf (Isolate *isolate, Handle< Object > object)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > Add (Isolate *isolate, Handle< Object > lhs, Handle< Object > rhs)
 
static V8_WARN_UNUSED_RESULT Maybe< bool > GreaterThan (Isolate *isolate, Handle< Object > x, Handle< Object > y)
 
static V8_WARN_UNUSED_RESULT Maybe< bool > GreaterThanOrEqual (Isolate *isolate, Handle< Object > x, Handle< Object > y)
 
static V8_WARN_UNUSED_RESULT Maybe< bool > LessThan (Isolate *isolate, Handle< Object > x, Handle< Object > y)
 
static V8_WARN_UNUSED_RESULT Maybe< bool > LessThanOrEqual (Isolate *isolate, Handle< Object > x, Handle< Object > y)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > OrdinaryHasInstance (Isolate *isolate, Handle< Object > callable, Handle< Object > object)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > InstanceOf (Isolate *isolate, Handle< Object > object, Handle< Object > callable)
 
V8_EXPORT_PRIVATE static V8_WARN_UNUSED_RESULT MaybeHandle< Object > GetProperty (LookupIterator *it, OnNonExistent on_non_existent=OnNonExistent::kReturnUndefined)
 
static V8_WARN_UNUSED_RESULT Maybe< bool > SetProperty (LookupIterator *it, Handle< Object > value, LanguageMode language_mode, StoreOrigin store_origin)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > SetProperty (Isolate *isolate, Handle< Object > object, Handle< Name > name, Handle< Object > value, LanguageMode language_mode, StoreOrigin store_origin=StoreOrigin::kMaybeKeyed)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > SetPropertyOrElement (Isolate *isolate, Handle< Object > object, Handle< Name > name, Handle< Object > value, LanguageMode language_mode, StoreOrigin store_origin=StoreOrigin::kMaybeKeyed)
 
static V8_WARN_UNUSED_RESULT Maybe< bool > SetSuperProperty (LookupIterator *it, Handle< Object > value, LanguageMode language_mode, StoreOrigin store_origin)
 
static V8_WARN_UNUSED_RESULT Maybe< bool > CannotCreateProperty (Isolate *isolate, Handle< Object > receiver, Handle< Object > name, Handle< Object > value, ShouldThrow should_throw)
 
static V8_WARN_UNUSED_RESULT Maybe< bool > WriteToReadOnlyProperty (LookupIterator *it, Handle< Object > value, ShouldThrow should_throw)
 
static V8_WARN_UNUSED_RESULT Maybe< bool > WriteToReadOnlyProperty (Isolate *isolate, Handle< Object > receiver, Handle< Object > name, Handle< Object > value, ShouldThrow should_throw)
 
static V8_WARN_UNUSED_RESULT Maybe< bool > RedefineIncompatibleProperty (Isolate *isolate, Handle< Object > name, Handle< Object > value, ShouldThrow should_throw)
 
static V8_WARN_UNUSED_RESULT Maybe< bool > SetDataProperty (LookupIterator *it, Handle< Object > value)
 
static V8_WARN_UNUSED_RESULT Maybe< bool > AddDataProperty (LookupIterator *it, Handle< Object > value, PropertyAttributes attributes, ShouldThrow should_throw, StoreOrigin store_origin)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > GetPropertyOrElement (Isolate *isolate, Handle< Object > object, Handle< Name > name)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > GetPropertyOrElement (Handle< Object > receiver, Handle< Name > name, Handle< JSReceiver > holder)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > GetProperty (Isolate *isolate, Handle< Object > object, Handle< Name > name)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > GetPropertyWithAccessor (LookupIterator *it)
 
static V8_WARN_UNUSED_RESULT Maybe< bool > SetPropertyWithAccessor (LookupIterator *it, Handle< Object > value, ShouldThrow should_throw)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > GetPropertyWithDefinedGetter (Handle< Object > receiver, Handle< JSReceiver > getter)
 
static V8_WARN_UNUSED_RESULT Maybe< bool > SetPropertyWithDefinedSetter (Handle< Object > receiver, Handle< JSReceiver > setter, Handle< Object > value, ShouldThrow should_throw)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > GetElement (Isolate *isolate, Handle< Object > object, uint32_t index)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > SetElement (Isolate *isolate, Handle< Object > object, uint32_t index, Handle< Object > value, LanguageMode language_mode)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > ArraySpeciesConstructor (Isolate *isolate, Handle< Object > original_array)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< Object > SpeciesConstructor (Isolate *isolate, Handle< JSReceiver > recv, Handle< JSFunction > default_ctor)
 

Static Public Attributes

static constexpr ObjectPtr const kNoSharedNameSentinel = Smi::kZero
 
static const int kEntriesStart = 0
 
static const int kContextOffset = 0
 
static const int kCachedCodeOffset = 1
 
static const int kEntryLength = 2
 
static const int kInitialLength = kEntriesStart + kEntryLength
 
static const int kNotFound = -1
 
static const uint16_t kInvalidLength = static_cast<uint16_t>(-1)
 
static const uint16_t kDontAdaptArgumentsSentinel = static_cast<uint16_t>(-1)
 
static const int kMaximumFunctionTokenOffset = kMaxUInt16 - 1
 
static const uint16_t kFunctionTokenOutOfRange = static_cast<uint16_t>(-1)
 
static const int kUniqueIdFieldSize = 0
 
- Static Public Attributes inherited from v8::internal::HeapObject
static const int kMapOffset = Object::kHeaderSize
 
static const int kHeaderSize = kMapOffset + kPointerSize
 
- Static Public Attributes inherited from v8::internal::Object
static const int kHeaderSize = 0
 

Friends

class Factory
 
class V8HeapExplorer
 

Detailed Description

Definition at line 184 of file shared-function-info.h.


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