V8 Project
v8::internal::Script Class Reference

#include <objects.h>

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

Public Types

enum  Type { TYPE_NATIVE = 0 , TYPE_EXTENSION = 1 , TYPE_NORMAL = 2 }
 
enum  CompilationType { COMPILATION_TYPE_HOST = 0 , COMPILATION_TYPE_EVAL = 1 }
 
enum  CompilationState { COMPILATION_STATE_INITIAL = 0 , COMPILATION_STATE_COMPILED = 1 }
 
- Public Types inherited from v8::internal::Object
enum  StoreFromKeyed { MAY_BE_STORE_FROM_KEYED , CERTAINLY_NOT_STORE_FROM_KEYED }
 
enum  StorePropertyMode { NORMAL_PROPERTY , SUPER_PROPERTY }
 

Public Member Functions

CompilationType compilation_type ()
 
void set_compilation_type (CompilationType type)
 
CompilationState compilation_state ()
 
void set_compilation_state (CompilationState state)
 
bool HasValidSource ()
 
int GetLineNumber (int code_pos)
 
void ClearWrapperCache ()
 
- Public Member Functions inherited from v8::internal::Struct
void InitializeBody (int object_size)
 
- Public Member Functions inherited from v8::internal::HeapObject
Mapmap () const
 
void set_map (Map *value)
 
void set_map_no_write_barrier (Map *value)
 
Mapsynchronized_map ()
 
MapWord synchronized_map_word () const
 
void synchronized_set_map (Map *value)
 
void synchronized_set_map_no_write_barrier (Map *value)
 
void synchronized_set_map_word (MapWord map_word)
 
MapWord map_word () const
 
void set_map_word (MapWord map_word)
 
HeapGetHeap () const
 
IsolateGetIsolate () const
 
Address address ()
 
void Iterate (ObjectVisitor *v)
 
void IterateBody (InstanceType type, int object_size, ObjectVisitor *v)
 
int Size ()
 
bool MayContainRawValues ()
 
int SizeFromMap (Map *map)
 
WriteBarrierMode GetWriteBarrierMode (const DisallowHeapAllocation &promise)
 
void HeapObjectShortPrint (OStream &os)
 
 STATIC_ASSERT (kMapOffset==Internals::kHeapObjectMapOffset)
 
- Public Member Functions inherited from v8::internal::Object
bool IsObject () const
 
 INLINE (bool IsFixedArrayBase() const)
 
 INLINE (bool IsExternal() const)
 
 INLINE (bool IsAccessorInfo() const)
 
 INLINE (bool IsStruct() const)
 
 INLINE (bool IsSpecObject()) const
 
 INLINE (bool IsSpecFunction()) const
 
 INLINE (bool IsTemplateInfo()) const
 
 INLINE (bool IsNameDictionary() const)
 
 INLINE (bool IsSeededNumberDictionary() const)
 
 INLINE (bool IsUnseededNumberDictionary() const)
 
 INLINE (bool IsOrderedHashSet() const)
 
 INLINE (bool IsOrderedHashMap() const)
 
bool IsCallable () const
 
 INLINE (bool IsUndefined() const)
 
 INLINE (bool IsNull() const)
 
 INLINE (bool IsTheHole() const)
 
 INLINE (bool IsException() const)
 
 INLINE (bool IsUninitialized() const)
 
 INLINE (bool IsTrue() const)
 
 INLINE (bool IsFalse() const)
 
 INLINE (bool IsArgumentsMarker() const)
 
 INLINE (bool IsFiller() const)
 
double Number ()
 
 INLINE (bool IsNaN() const)
 
 INLINE (bool IsMinusZero() const)
 
bool ToInt32 (int32_t *value)
 
bool ToUint32 (uint32_t *value)
 
Representation OptimalRepresentation ()
 
bool FitsRepresentation (Representation representation)
 
Handle< HeapTypeOptimalType (Isolate *isolate, Representation representation)
 
bool HasValidElements ()
 
bool HasSpecificClassOf (String *name)
 
bool BooleanValue ()
 
ObjectGetHash ()
 
bool SameValue (Object *other)
 
bool SameValueZero (Object *other)
 
bool ToArrayIndex (uint32_t *index)
 
bool IsStringObjectWithCharacterAt (uint32_t index)
 
void VerifyApiCallResultType ()
 
void ShortPrint (FILE *out=stdout)
 
void ShortPrint (StringStream *accumulator)
 

Static Public Member Functions

static int GetColumnNumber (Handle< Script > script, int code_pos)
 
static int GetLineNumber (Handle< Script > script, int code_pos)
 
static Handle< ObjectGetNameOrSourceURL (Handle< Script > script)
 
static void InitLineEnds (Handle< Script > script)
 
static Handle< JSObjectGetWrapper (Handle< Script > script)
 
- Static Public Member Functions inherited from v8::internal::HeapObject
static HeapObjectFromAddress (Address address)
 
static Object ** RawField (HeapObject *obj, int offset)
 
static void UpdateMapCodeCache (Handle< HeapObject > object, Handle< Name > name, Handle< Code > code)
 
- Static Public Member Functions inherited from v8::internal::Object
static Handle< ObjectNewStorageFor (Isolate *isolate, Handle< Object > object, Representation representation)
 
static Handle< ObjectWrapForRead (Isolate *isolate, Handle< Object > object, Representation representation)
 
static MaybeHandle< JSReceiverToObject (Isolate *isolate, Handle< Object > object)
 
static MaybeHandle< JSReceiverToObject (Isolate *isolate, Handle< Object > object, Handle< Context > context)
 
static MUST_USE_RESULT MaybeHandle< SmiToSmi (Isolate *isolate, Handle< Object > object)
 
static MUST_USE_RESULT MaybeHandle< ObjectGetProperty (LookupIterator *it)
 
static MUST_USE_RESULT MaybeHandle< ObjectSetProperty (Handle< Object > object, Handle< Name > key, Handle< Object > value, StrictMode strict_mode, StoreFromKeyed store_mode=MAY_BE_STORE_FROM_KEYED)
 
static MUST_USE_RESULT MaybeHandle< ObjectSetProperty (LookupIterator *it, Handle< Object > value, StrictMode strict_mode, StoreFromKeyed store_mode, StorePropertyMode data_store_mode=NORMAL_PROPERTY)
 
static MUST_USE_RESULT MaybeHandle< ObjectWriteToReadOnlyProperty (LookupIterator *it, Handle< Object > value, StrictMode strict_mode)
 
static Handle< ObjectSetDataProperty (LookupIterator *it, Handle< Object > value)
 
static MUST_USE_RESULT MaybeHandle< ObjectAddDataProperty (LookupIterator *it, Handle< Object > value, PropertyAttributes attributes, StrictMode strict_mode, StoreFromKeyed store_mode)
 
static MUST_USE_RESULT MaybeHandle< ObjectGetPropertyOrElement (Handle< Object > object, Handle< Name > key)
 
static MUST_USE_RESULT MaybeHandle< ObjectGetProperty (Isolate *isolate, Handle< Object > object, const char *key)
 
static MUST_USE_RESULT MaybeHandle< ObjectGetProperty (Handle< Object > object, Handle< Name > key)
 
static MUST_USE_RESULT MaybeHandle< ObjectGetPropertyWithAccessor (Handle< Object > receiver, Handle< Name > name, Handle< JSObject > holder, Handle< Object > structure)
 
static MUST_USE_RESULT MaybeHandle< ObjectSetPropertyWithAccessor (Handle< Object > receiver, Handle< Name > name, Handle< Object > value, Handle< JSObject > holder, Handle< Object > structure, StrictMode strict_mode)
 
static MUST_USE_RESULT MaybeHandle< ObjectGetPropertyWithDefinedGetter (Handle< Object > receiver, Handle< JSReceiver > getter)
 
static MUST_USE_RESULT MaybeHandle< ObjectSetPropertyWithDefinedSetter (Handle< Object > receiver, Handle< JSReceiver > setter, Handle< Object > value)
 
static MUST_USE_RESULT MaybeHandle< ObjectGetElement (Isolate *isolate, Handle< Object > object, uint32_t index)
 
static MUST_USE_RESULT MaybeHandle< ObjectGetElementWithReceiver (Isolate *isolate, Handle< Object > object, Handle< Object > receiver, uint32_t index)
 
static Handle< SmiGetOrCreateHash (Isolate *isolate, Handle< Object > object)
 

Static Public Attributes

static const int kSourceOffset = HeapObject::kHeaderSize
 
static const int kNameOffset = kSourceOffset + kPointerSize
 
static const int kLineOffsetOffset = kNameOffset + kPointerSize
 
static const int kColumnOffsetOffset = kLineOffsetOffset + kPointerSize
 
static const int kContextOffset = kColumnOffsetOffset + kPointerSize
 
static const int kWrapperOffset = kContextOffset + kPointerSize
 
static const int kTypeOffset = kWrapperOffset + kPointerSize
 
static const int kLineEndsOffset = kTypeOffset + kPointerSize
 
static const int kIdOffset = kLineEndsOffset + kPointerSize
 
static const int kEvalFromSharedOffset = kIdOffset + kPointerSize
 
static const int kEvalFrominstructionsOffsetOffset
 
static const int kFlagsOffset
 
static const int kSourceUrlOffset = kFlagsOffset + kPointerSize
 
static const int kSourceMappingUrlOffset = kSourceUrlOffset + kPointerSize
 
static const int kSize = kSourceMappingUrlOffset + kPointerSize
 
- 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
 

Private Member Functions

int GetLineNumberWithArray (int code_pos)
 
 DISALLOW_IMPLICIT_CONSTRUCTORS (Script)
 

Static Private Attributes

static const int kCompilationTypeBit = 0
 
static const int kCompilationStateBit = 1
 
static const int kIsSharedCrossOriginBit = 2
 

Additional Inherited Members

- Protected Member Functions inherited from v8::internal::HeapObject
void IteratePointers (ObjectVisitor *v, int start, int end)
 
void IteratePointer (ObjectVisitor *v, int offset)
 
void IterateNextCodeLink (ObjectVisitor *v, int offset)
 

Detailed Description

Definition at line 6394 of file objects.h.

Member Enumeration Documentation

◆ CompilationState

Enumerator
COMPILATION_STATE_INITIAL 
COMPILATION_STATE_COMPILED 

Definition at line 6410 of file objects.h.

6410  {
6413  };

◆ CompilationType

Enumerator
COMPILATION_TYPE_HOST 
COMPILATION_TYPE_EVAL 

Definition at line 6404 of file objects.h.

6404  {
6407  };

◆ Type

Enumerator
TYPE_NATIVE 
TYPE_EXTENSION 
TYPE_NORMAL 

Definition at line 6397 of file objects.h.

6397  {
6398  TYPE_NATIVE = 0,
6399  TYPE_EXTENSION = 1,
6400  TYPE_NORMAL = 2
6401  };

Member Function Documentation

◆ ClearWrapperCache()

void v8::internal::Script::ClearWrapperCache ( )

Definition at line 9731 of file objects.cc.

9731  {
9732  Foreign* foreign = wrapper();
9733  Object** location = reinterpret_cast<Object**>(foreign->foreign_address());
9734  DCHECK_EQ(foreign->foreign_address(), reinterpret_cast<Address>(location));
9735  foreign->set_foreign_address(0);
9736  GlobalHandles::Destroy(location);
9737  GetIsolate()->counters()->script_wrappers()->Decrement();
9738 }
static void Destroy(Object **location)
Isolate * GetIsolate() const
Definition: objects-inl.h:1387
Counters * counters()
Definition: isolate.h:857
#define DCHECK_EQ(v1, v2)
Definition: logging.h:206
kSerializedDataOffset Object
Definition: objects-inl.h:5322
byte * Address
Definition: globals.h:101

◆ compilation_state()

Script::CompilationState v8::internal::Script::compilation_state ( )
inline

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

5383  {
5386 }
static bool get(Smi *smi, int bit_position)
Definition: objects.h:10791
static const int kCompilationStateBit
Definition: objects.h:6526

References COMPILATION_STATE_COMPILED, COMPILATION_STATE_INITIAL, v8::internal::anonymous_namespace{flags.cc}::flags, v8::internal::BooleanBit::get(), and kCompilationStateBit.

+ Here is the call graph for this function:

◆ compilation_type()

CompilationType v8::internal::Script::compilation_type ( )
inline

◆ DISALLOW_IMPLICIT_CONSTRUCTORS()

v8::internal::Script::DISALLOW_IMPLICIT_CONSTRUCTORS ( Script  )
private

◆ GetColumnNumber()

int v8::internal::Script::GetColumnNumber ( Handle< Script script,
int  code_pos 
)
static

Definition at line 9635 of file objects.cc.

9635  {
9636  int line_number = GetLineNumber(script, code_pos);
9637  if (line_number == -1) return -1;
9638 
9639  DisallowHeapAllocation no_allocation;
9640  FixedArray* line_ends_array = FixedArray::cast(script->line_ends());
9641  line_number = line_number - script->line_offset()->value();
9642  if (line_number == 0) return code_pos + script->column_offset()->value();
9643  int prev_line_end_pos =
9644  Smi::cast(line_ends_array->get(line_number - 1))->value();
9645  return code_pos - (prev_line_end_pos + 1);
9646 }
static int GetLineNumber(Handle< Script > script, int code_pos)
Definition: objects.cc:9673
PerThreadAssertScopeDebugOnly< HEAP_ALLOCATION_ASSERT, false > DisallowHeapAllocation
Definition: assert-scope.h:110

References v8::internal::FixedArray::get(), and GetLineNumber().

Referenced by v8::Function::GetScriptColumnNumber(), v8::internal::Logger::LogExistingFunction(), v8::internal::RecordFunctionCompilation(), and v8::internal::AllocationTracker::UnresolvedLocation::Resolve().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetLineNumber() [1/2]

int v8::internal::Script::GetLineNumber ( Handle< Script script,
int  code_pos 
)
static

Definition at line 9673 of file objects.cc.

9673  {
9674  InitLineEnds(script);
9675  return script->GetLineNumberWithArray(code_pos);
9676 }
static void InitLineEnds(Handle< Script > script)
Definition: objects.cc:9609

References InitLineEnds().

Referenced by v8::internal::Isolate::CaptureCurrentStackTrace(), GetColumnNumber(), v8::UnboundScript::GetLineNumber(), v8::Function::GetScriptLineNumber(), v8::internal::Logger::LogExistingFunction(), v8::internal::JavaScriptFrame::Print(), v8::internal::JavaScriptFrame::PrintFunctionAndOffset(), v8::internal::RecordFunctionCompilation(), and v8::internal::AllocationTracker::UnresolvedLocation::Resolve().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetLineNumber() [2/2]

int v8::internal::Script::GetLineNumber ( int  code_pos)

Definition at line 9679 of file objects.cc.

9679  {
9680  DisallowHeapAllocation no_allocation;
9681  if (!line_ends()->IsUndefined()) return GetLineNumberWithArray(code_pos);
9682 
9683  // Slow mode: we do not have line_ends. We have to iterate through source.
9684  if (!source()->IsString()) return -1;
9685 
9686  String* source_string = String::cast(source());
9687  int line = 0;
9688  int len = source_string->length();
9689  for (int pos = 0; pos < len; pos++) {
9690  if (pos == code_pos) break;
9691  if (source_string->Get(pos) == '\n') line++;
9692  }
9693  return line;
9694 }
int GetLineNumberWithArray(int code_pos)
Definition: objects.cc:9649

References GetLineNumberWithArray(), and v8::internal::String::length().

+ Here is the call graph for this function:

◆ GetLineNumberWithArray()

int v8::internal::Script::GetLineNumberWithArray ( int  code_pos)
private

Definition at line 9649 of file objects.cc.

9649  {
9650  DisallowHeapAllocation no_allocation;
9651  DCHECK(line_ends()->IsFixedArray());
9652  FixedArray* line_ends_array = FixedArray::cast(line_ends());
9653  int line_ends_len = line_ends_array->length();
9654  if (line_ends_len == 0) return -1;
9655 
9656  if ((Smi::cast(line_ends_array->get(0)))->value() >= code_pos) {
9657  return line_offset()->value();
9658  }
9659 
9660  int left = 0;
9661  int right = line_ends_len;
9662  while (int half = (right - left) / 2) {
9663  if ((Smi::cast(line_ends_array->get(left + half)))->value() > code_pos) {
9664  right -= half;
9665  } else {
9666  left += half;
9667  }
9668  }
9669  return right + line_offset()->value();
9670 }
#define DCHECK(condition)
Definition: logging.h:205

References DCHECK, v8::internal::FixedArray::get(), and v8::internal::FixedArrayBase::length().

Referenced by GetLineNumber().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetNameOrSourceURL()

Handle< Object > v8::internal::Script::GetNameOrSourceURL ( Handle< Script script)
static

Definition at line 9697 of file objects.cc.

9697  {
9698  Isolate* isolate = script->GetIsolate();
9699  Handle<String> name_or_source_url_key =
9700  isolate->factory()->InternalizeOneByteString(
9701  STATIC_CHAR_VECTOR("nameOrSourceURL"));
9702  Handle<JSObject> script_wrapper = Script::GetWrapper(script);
9703  Handle<Object> property = Object::GetProperty(
9704  script_wrapper, name_or_source_url_key).ToHandleChecked();
9705  DCHECK(property->IsJSFunction());
9706  Handle<JSFunction> method = Handle<JSFunction>::cast(property);
9707  Handle<Object> result;
9708  // Do not check against pending exception, since this function may be called
9709  // when an exception has already been pending.
9710  if (!Execution::TryCall(method, script_wrapper, 0, NULL).ToHandle(&result)) {
9711  return isolate->factory()->undefined_value();
9712  }
9713  return result;
9714 }
static Handle< T > cast(Handle< S > that)
Definition: handles.h:116
static MUST_USE_RESULT MaybeHandle< Object > GetProperty(LookupIterator *it)
Definition: objects.cc:109
static Handle< JSObject > GetWrapper(Handle< Script > script)
Definition: objects.cc:9741
enable harmony numeric enable harmony object literal extensions Optimize object Array DOM strings and string trace pretenuring decisions of HAllocate instructions Enables optimizations which favor memory size over execution speed maximum source size in bytes considered for a single inlining maximum cumulative number of AST nodes considered for inlining trace the tracking of allocation sites deoptimize every n garbage collections perform array bounds checks elimination analyze liveness of environment slots and zap dead values flushes the cache of optimized code for closures on every GC allow uint32 values on optimize frames if they are used only in safe operations track concurrent recompilation artificial compilation delay in ms do not emit check maps for constant values that have a leaf deoptimize the optimized code if the layout of the maps changes enable context specialization in TurboFan execution budget before interrupt is triggered max percentage of megamorphic generic ICs to allow optimization enable use of SAHF instruction if enable use of VFP3 instructions if available enable use of NEON instructions if enable use of SDIV and UDIV instructions if enable use of MLS instructions if enable loading bit constant by means of movw movt instruction enable unaligned accesses for enable use of d16 d31 registers on ARM this requires VFP3 force all emitted branches to be in long enable alignment of csp to bytes on platforms which prefer the register to always be NULL
#define STATIC_CHAR_VECTOR(x)
Definition: vector.h:154

References v8::internal::Handle< T >::cast(), DCHECK, v8::internal::Isolate::factory(), v8::internal::Object::GetProperty(), GetWrapper(), NULL, and STATIC_CHAR_VECTOR.

Referenced by v8::internal::Isolate::CaptureCurrentStackTrace(), v8::Message::GetScriptOrigin(), and v8::Function::GetScriptOrigin().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetWrapper()

Handle< JSObject > v8::internal::Script::GetWrapper ( Handle< Script script)
static

Definition at line 9741 of file objects.cc.

9741  {
9742  if (script->wrapper()->foreign_address() != NULL) {
9743  // Return a handle for the existing script wrapper from the cache.
9744  return Handle<JSValue>(
9745  *reinterpret_cast<JSValue**>(script->wrapper()->foreign_address()));
9746  }
9747  Isolate* isolate = script->GetIsolate();
9748  // Construct a new script wrapper.
9749  isolate->counters()->script_wrappers()->Increment();
9750  Handle<JSFunction> constructor = isolate->script_function();
9751  Handle<JSValue> result =
9752  Handle<JSValue>::cast(isolate->factory()->NewJSObject(constructor));
9753 
9754  result->set_value(*script);
9755 
9756  // Create a new weak global handle and use it to cache the wrapper
9757  // for future use. The cache will automatically be cleared by the
9758  // garbage collector when it is not used anymore.
9759  Handle<Object> handle = isolate->global_handles()->Create(*result);
9760  GlobalHandles::MakeWeak(handle.location(),
9761  reinterpret_cast<void*>(handle.location()),
9763  script->wrapper()->set_foreign_address(
9764  reinterpret_cast<Address>(handle.location()));
9765  return result;
9766 }
static void MakeWeak(Object **location, void *parameter, WeakCallback weak_callback)
static void ClearWrapperCacheWeakCallback(const v8::WeakCallbackData< v8::Value, void > &data)
Definition: objects.cc:9723
Handle< T > handle(T *t, Isolate *isolate)
Definition: handles.h:146

References NULL.

Referenced by v8::internal::LiveEdit::GatherCompileInfo(), GetNameOrSourceURL(), v8::internal::Debug::MakeCompileEvent(), v8::internal::MessageHandler::MakeMessageObject(), v8::internal::Debug::OnAfterCompile(), v8::internal::RUNTIME_FUNCTION(), and v8::internal::Runtime_GetScriptFromScriptName().

+ Here is the caller graph for this function:

◆ HasValidSource()

bool v8::internal::Script::HasValidSource ( )
inline

◆ InitLineEnds()

void v8::internal::Script::InitLineEnds ( Handle< Script script)
static

Definition at line 9609 of file objects.cc.

9609  {
9610  if (!script->line_ends()->IsUndefined()) return;
9611 
9612  Isolate* isolate = script->GetIsolate();
9613 
9614  if (!script->source()->IsString()) {
9615  DCHECK(script->source()->IsUndefined());
9616  Handle<FixedArray> empty = isolate->factory()->NewFixedArray(0);
9617  script->set_line_ends(*empty);
9618  DCHECK(script->line_ends()->IsFixedArray());
9619  return;
9620  }
9621 
9622  Handle<String> src(String::cast(script->source()), isolate);
9623 
9624  Handle<FixedArray> array = String::CalculateLineEnds(src, true);
9625 
9626  if (*array != isolate->heap()->empty_fixed_array()) {
9627  array->set_map(isolate->heap()->fixed_cow_array_map());
9628  }
9629 
9630  script->set_line_ends(*array);
9631  DCHECK(script->line_ends()->IsFixedArray());
9632 }
static Handle< FixedArray > CalculateLineEnds(Handle< String > string, bool include_ending_line)
Definition: objects.cc:8483

References v8::internal::String::CalculateLineEnds(), DCHECK, v8::internal::Isolate::factory(), and v8::internal::Isolate::heap().

Referenced by GetLineNumber().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ set_compilation_state()

void v8::internal::Script::set_compilation_state ( CompilationState  state)
inline

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

5387  {
5389  state == COMPILATION_STATE_COMPILED));
5390 }
static Smi * set(Smi *smi, int bit_position, bool v)
Definition: objects.h:10799

References COMPILATION_STATE_COMPILED, v8::internal::anonymous_namespace{flags.cc}::flags, kCompilationStateBit, and v8::internal::BooleanBit::set().

+ Here is the call graph for this function:

◆ set_compilation_type()

void v8::internal::Script::set_compilation_type ( CompilationType  type)
inline

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

5379  {
5381  type == COMPILATION_TYPE_EVAL));
5382 }
static const int kCompilationTypeBit
Definition: objects.h:6525

References COMPILATION_TYPE_EVAL, v8::internal::anonymous_namespace{flags.cc}::flags, kCompilationTypeBit, and v8::internal::BooleanBit::set().

+ Here is the call graph for this function:

Member Data Documentation

◆ kColumnOffsetOffset

const int v8::internal::Script::kColumnOffsetOffset = kLineOffsetOffset + kPointerSize
static

Definition at line 6506 of file objects.h.

◆ kCompilationStateBit

const int v8::internal::Script::kCompilationStateBit = 1
staticprivate

Definition at line 6526 of file objects.h.

Referenced by compilation_state(), and set_compilation_state().

◆ kCompilationTypeBit

const int v8::internal::Script::kCompilationTypeBit = 0
staticprivate

Definition at line 6525 of file objects.h.

Referenced by set_compilation_type().

◆ kContextOffset

const int v8::internal::Script::kContextOffset = kColumnOffsetOffset + kPointerSize
static

Definition at line 6507 of file objects.h.

Referenced by v8::internal::V8HeapExplorer::ExtractScriptReferences().

◆ kEvalFrominstructionsOffsetOffset

const int v8::internal::Script::kEvalFrominstructionsOffsetOffset
static
Initial value:
=
static const int kEvalFromSharedOffset
Definition: objects.h:6512
const int kPointerSize
Definition: globals.h:129

Definition at line 6513 of file objects.h.

◆ kEvalFromSharedOffset

const int v8::internal::Script::kEvalFromSharedOffset = kIdOffset + kPointerSize
static

Definition at line 6512 of file objects.h.

◆ kFlagsOffset

const int v8::internal::Script::kFlagsOffset
static
Initial value:

Definition at line 6515 of file objects.h.

◆ kIdOffset

const int v8::internal::Script::kIdOffset = kLineEndsOffset + kPointerSize
static

Definition at line 6511 of file objects.h.

◆ kIsSharedCrossOriginBit

const int v8::internal::Script::kIsSharedCrossOriginBit = 2
staticprivate

Definition at line 6527 of file objects.h.

◆ kLineEndsOffset

const int v8::internal::Script::kLineEndsOffset = kTypeOffset + kPointerSize
static

Definition at line 6510 of file objects.h.

Referenced by v8::internal::V8HeapExplorer::ExtractScriptReferences().

◆ kLineOffsetOffset

const int v8::internal::Script::kLineOffsetOffset = kNameOffset + kPointerSize
static

Definition at line 6505 of file objects.h.

◆ kNameOffset

const int v8::internal::Script::kNameOffset = kSourceOffset + kPointerSize
static

Definition at line 6504 of file objects.h.

Referenced by v8::internal::V8HeapExplorer::ExtractScriptReferences().

◆ kSize

const int v8::internal::Script::kSize = kSourceMappingUrlOffset + kPointerSize
static

Definition at line 6519 of file objects.h.

◆ kSourceMappingUrlOffset

const int v8::internal::Script::kSourceMappingUrlOffset = kSourceUrlOffset + kPointerSize
static

Definition at line 6518 of file objects.h.

◆ kSourceOffset

const int v8::internal::Script::kSourceOffset = HeapObject::kHeaderSize
static

Definition at line 6503 of file objects.h.

Referenced by v8::internal::V8HeapExplorer::ExtractScriptReferences().

◆ kSourceUrlOffset

const int v8::internal::Script::kSourceUrlOffset = kFlagsOffset + kPointerSize
static

Definition at line 6517 of file objects.h.

◆ kTypeOffset

const int v8::internal::Script::kTypeOffset = kWrapperOffset + kPointerSize
static

Definition at line 6509 of file objects.h.

◆ kWrapperOffset

const int v8::internal::Script::kWrapperOffset = kContextOffset + kPointerSize
static

Definition at line 6508 of file objects.h.


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