v8  3.25.30(node0.11.13)
V8 is Google's open source JavaScript engine
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Runtime Class Reference

#include <runtime.h>

Inheritance diagram for Runtime:
Collaboration diagram for Runtime:

Data Structures

struct  Function
 

Public Types

enum  FunctionId { kNumFunctions, kFirstInlineFunction = kInlineIsSmi }
 
enum  IntrinsicType { RUNTIME, RUNTIME_HIDDEN, INLINE, INLINE_OPTIMIZED }
 
enum  TypedArrayId {
  ARRAY_ID_UINT8 = 1, ARRAY_ID_INT8 = 2, ARRAY_ID_UINT16 = 3, ARRAY_ID_INT16 = 4,
  ARRAY_ID_UINT32 = 5, ARRAY_ID_INT32 = 6, ARRAY_ID_FLOAT32 = 7, ARRAY_ID_FLOAT64 = 8,
  ARRAY_ID_UINT8_CLAMPED = 9
}
 

Static Public Member Functions

static MUST_USE_RESULT
MaybeObject * 
InitializeIntrinsicFunctionNames (Heap *heap, Object *dictionary)
 
static const FunctionFunctionForName (Handle< String > name)
 
static const FunctionFunctionForId (FunctionId id)
 
static int StringMatch (Isolate *isolate, Handle< String > sub, Handle< String > pat, int index)
 
static bool IsUpperCaseChar (RuntimeState *runtime_state, uint16_t ch)
 
static Handle< ObjectGetElementOrCharAt (Isolate *isolate, Handle< Object > object, uint32_t index)
 
static Handle< ObjectSetObjectProperty (Isolate *isolate, Handle< Object > object, Handle< Object > key, Handle< Object > value, PropertyAttributes attr, StrictMode strict_mode)
 
static Handle< ObjectForceSetObjectProperty (Isolate *isolate, Handle< JSObject > object, Handle< Object > key, Handle< Object > value, PropertyAttributes attr)
 
static MUST_USE_RESULT
MaybeObject * 
DeleteObjectProperty (Isolate *isolate, Handle< JSReceiver > object, Handle< Object > key, JSReceiver::DeleteMode mode)
 
static MUST_USE_RESULT
MaybeObject * 
HasObjectProperty (Isolate *isolate, Handle< JSReceiver > object, Handle< Object > key)
 
static MUST_USE_RESULT
MaybeObject * 
GetObjectProperty (Isolate *isolate, Handle< Object > object, Handle< Object > key)
 
static MUST_USE_RESULT
MaybeObject * 
GetObjectPropertyOrFail (Isolate *isolate, Handle< Object > object, Handle< Object > key)
 
static void SetupArrayBuffer (Isolate *isolate, Handle< JSArrayBuffer > array_buffer, bool is_external, void *data, size_t allocated_length)
 
static bool SetupArrayBufferAllocatingData (Isolate *isolate, Handle< JSArrayBuffer > array_buffer, size_t allocated_length, bool initialize=true)
 
static void NeuterArrayBuffer (Handle< JSArrayBuffer > array_buffer)
 
static void FreeArrayBuffer (Isolate *isolate, JSArrayBuffer *phantom_array_buffer)
 
static void ArrayIdToTypeAndSize (int array_id, ExternalArrayType *type, ElementsKind *external_elements_kind, ElementsKind *fixed_elements_kind, size_t *element_size)
 
static void PerformGC (Object *result, Isolate *isolate)
 
static void OutOfMemory ()
 
static Handle< ObjectCreateArrayLiteralBoilerplate (Isolate *isolate, Handle< FixedArray > literals, Handle< FixedArray > elements)
 

Static Public Attributes

static const int kNotFound = -1
 

Detailed Description

Definition at line 747 of file runtime.h.

Member Enumeration Documentation

enum FunctionId
Enumerator
kNumFunctions 
kFirstInlineFunction 

Definition at line 749 of file runtime.h.

Enumerator
RUNTIME 
RUNTIME_HIDDEN 
INLINE 
INLINE_OPTIMIZED 

Definition at line 766 of file runtime.h.

Enumerator
ARRAY_ID_UINT8 
ARRAY_ID_INT8 
ARRAY_ID_UINT16 
ARRAY_ID_INT16 
ARRAY_ID_UINT32 
ARRAY_ID_INT32 
ARRAY_ID_FLOAT32 
ARRAY_ID_FLOAT64 
ARRAY_ID_UINT8_CLAMPED 

Definition at line 877 of file runtime.h.

Member Function Documentation

void ArrayIdToTypeAndSize ( int  array_id,
ExternalArrayType type,
ElementsKind external_elements_kind,
ElementsKind fixed_elements_kind,
size_t *  element_size 
)
static

Definition at line 928 of file runtime.cc.

References ARRAY_ID_CASE, TYPED_ARRAYS, and UNREACHABLE.

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

const Runtime::Function * FunctionForId ( Runtime::FunctionId  id)
static
const Runtime::Function * FunctionForName ( Handle< String name)
static

Definition at line 15142 of file runtime.cc.

References Smi::cast(), Runtime::kNotFound, v8::internal::NULL, and Smi::value().

Handle< Object > GetElementOrCharAt ( Isolate isolate,
Handle< Object object,
uint32_t  index 
)
static
MaybeObject * GetObjectPropertyOrFail ( Isolate isolate,
Handle< Object object,
Handle< Object key 
)
static

Definition at line 4982 of file runtime.cc.

References CALL_HEAP_FUNCTION_PASS_EXCEPTION, and Runtime::GetObjectProperty().

Referenced by KeyedLoadIC::Load().

MaybeObject * HasObjectProperty ( Isolate isolate,
Handle< JSReceiver object,
Handle< Object key 
)
static
bool IsUpperCaseChar ( RuntimeState runtime_state,
uint16_t  ch 
)
static
void OutOfMemory ( )
static

Definition at line 15180 of file runtime.cc.

References Heap::FatalProcessOutOfMemory(), and UNREACHABLE.

void SetupArrayBuffer ( Isolate isolate,
Handle< JSArrayBuffer array_buffer,
bool  is_external,
void *  data,
size_t  allocated_length 
)
static
bool SetupArrayBufferAllocatingData ( Isolate isolate,
Handle< JSArrayBuffer array_buffer,
size_t  allocated_length,
bool  initialize = true 
)
static

Field Documentation

const int kNotFound = -1
static

Definition at line 790 of file runtime.h.

Referenced by Runtime::FunctionForName().


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