v8
3.25.30(node0.11.13)
V8 is Google's open source JavaScript engine
|
#include <objects.h>
Static Public Member Functions | |
static SeqString * | cast (Object *obj) |
static MUST_USE_RESULT Handle < String > | Truncate (Handle< SeqString > string, int new_length) |
Static Public Member Functions inherited from String | |
static String * | cast (Object *obj) |
template<typename sinkchar > | |
static void | WriteToFlat (String *source, sinkchar *sink, int from, int to) |
static int | NonAsciiStart (const char *chars, int length) |
static bool | IsAscii (const char *chars, int length) |
static bool | IsAscii (const uint8_t *chars, int length) |
static int | NonOneByteStart (const uc16 *chars, int length) |
static bool | IsOneByte (const uc16 *chars, int length) |
template<class Visitor , class ConsOp > | |
static void | Visit (String *string, unsigned offset, Visitor &visitor, ConsOp &cons_op, int32_t type, unsigned length) |
template<class Visitor > | |
static ConsString * | VisitFlat (Visitor *visitor, String *string, int offset, int length, int32_t type) |
template<class Visitor > | |
static ConsString * | VisitFlat (Visitor *visitor, String *string, int offset=0) |
Static Public Member Functions inherited from Name | |
static Name * | cast (Object *obj) |
Static Public Member Functions inherited from HeapObject | |
static HeapObject * | FromAddress (Address address) |
static Object ** | RawField (HeapObject *obj, int offset) |
static void | UpdateMapCodeCache (Handle< HeapObject > object, Handle< Name > name, Handle< Code > code) |
static HeapObject * | cast (Object *obj) |
Static Public Member Functions inherited from Object | |
static MUST_USE_RESULT Handle < Object > | ToSmi (Isolate *isolate, Handle< Object > object) |
static Handle< Object > | GetPropertyWithReceiver (Handle< Object > object, Handle< Object > receiver, Handle< Name > name, PropertyAttributes *attributes) |
static Handle< Object > | GetProperty (Handle< Object > object, Handle< Name > key) |
static Handle< Object > | GetProperty (Handle< Object > object, Handle< Object > receiver, LookupResult *result, Handle< Name > key, PropertyAttributes *attributes) |
static MUST_USE_RESULT MaybeObject * | GetPropertyOrFail (Handle< Object > object, Handle< Object > receiver, LookupResult *result, Handle< Name > key, PropertyAttributes *attributes) |
static Handle< Object > | GetElement (Isolate *isolate, Handle< Object > object, uint32_t index) |
static Handle< Object > | GetElementNoExceptionThrown (Isolate *isolate, Handle< Object > object, uint32_t index) |
static Handle< Object > | GetElementWithReceiver (Isolate *isolate, Handle< Object > object, Handle< Object > receiver, uint32_t index) |
static Handle< Object > | GetOrCreateHash (Handle< Object > object, Isolate *isolate) |
static Object * | cast (Object *value) |
Static Public Attributes | |
static const int | kHeaderSize = String::kSize |
Static Public Attributes inherited from String | |
static const int | kLengthOffset = Name::kSize |
static const int | kSize = kLengthOffset + kPointerSize |
static const int | kMaxArrayIndexSize = 10 |
static const int32_t | kMaxOneByteCharCode = unibrow::Latin1::kMaxChar |
static const uint32_t | kMaxOneByteCharCodeU = unibrow::Latin1::kMaxChar |
static const int | kMaxUtf16CodeUnit = 0xffff |
static const int | kEmptyStringHash = kIsNotArrayIndexMask |
static const int | kMaxLength = (1 << 28) - 16 |
static const int | kMaxHashCalcLength = 16383 |
static const int | kMaxShortPrintLength = 1024 |
Static Public Attributes inherited from Name | |
static const int | kHashFieldOffset = HeapObject::kHeaderSize |
static const int | kSize = kHashFieldOffset + kPointerSize |
static const int | kHashNotComputedMask = 1 |
static const int | kIsNotArrayIndexMask = 1 << 1 |
static const int | kNofHashBitFields = 2 |
static const int | kHashShift = kNofHashBitFields |
static const uint32_t | kHashBitMask = 0xffffffffu >> kHashShift |
static const int | kMaxCachedArrayIndexLength = 7 |
static const int | kArrayIndexValueBits = 24 |
static const int | kArrayIndexLengthBits |
static const int | kArrayIndexHashLengthShift |
static const int | kArrayIndexHashMask = (1 << kArrayIndexHashLengthShift) - 1 |
static const int | kArrayIndexValueMask |
static const unsigned int | kContainsCachedArrayIndexMask |
static const int | kEmptyHashField |
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 String | |
enum | Encoding { ONE_BYTE_ENCODING, TWO_BYTE_ENCODING } |
Public Types inherited from Object | |
enum | ValueType { OPTIMAL_REPRESENTATION, FORCE_TAGGED } |
Public Member Functions inherited from String | |
int | length () |
void | set_length (int value) |
bool | IsOneByteRepresentation () |
bool | IsTwoByteRepresentation () |
bool | IsOneByteRepresentationUnderneath () |
bool | IsTwoByteRepresentationUnderneath () |
bool | HasOnlyOneByteChars () |
void | Set (int index, uint16_t value) |
INLINE (uint16_t Get(int index)) | |
MaybeObject * | TryFlatten (PretenureFlag pretenure=NOT_TENURED) |
String * | TryFlattenGetString (PretenureFlag pretenure=NOT_TENURED) |
FlatContent | GetFlatContent () |
String * | GetUnderlying () |
bool | MarkAsUndetectable () |
bool | Equals (String *other) |
bool | IsUtf8EqualTo (Vector< const char > str, bool allow_prefix_match=false) |
bool | IsOneByteEqualTo (Vector< const uint8_t > str) |
bool | IsTwoByteEqualTo (Vector< const uc16 > str) |
SmartArrayPointer< char > | ToCString (AllowNullsFlag allow_nulls, RobustnessFlag robustness_flag, int offset, int length, int *length_output=0) |
SmartArrayPointer< char > | ToCString (AllowNullsFlag allow_nulls=DISALLOW_NULLS, RobustnessFlag robustness_flag=FAST_STRING_TRAVERSAL, int *length_output=0) |
SmartArrayPointer< uc16 > | ToWideCString (RobustnessFlag robustness_flag=FAST_STRING_TRAVERSAL) |
bool | ComputeArrayIndex (uint32_t *index) |
bool | MakeExternal (v8::String::ExternalStringResource *resource) |
bool | MakeExternal (v8::String::ExternalAsciiStringResource *resource) |
bool | AsArrayIndex (uint32_t *index) |
void | PrintOn (FILE *out) |
bool | LooksValid () |
void | StringShortPrint (StringStream *accumulator) |
bool | IsFlat () |
STATIC_CHECK (kMaxArrayIndexSize< (1<< kArrayIndexLengthBits)) | |
const uc16 * | GetTwoByteData (unsigned start) |
Public Member Functions inherited from Name | |
uint32_t | hash_field () |
void | set_hash_field (uint32_t value) |
bool | HasHashCode () |
uint32_t | Hash () |
bool | Equals (Name *other) |
bool | AsArrayIndex (uint32_t *index) |
bool | IsCacheable (Isolate *isolate) |
STATIC_CHECK ((kArrayIndexLengthBits > 0)) | |
STATIC_CHECK (IS_POWER_OF_TWO(kMaxCachedArrayIndexLength+1)) | |
Public Member Functions inherited from HeapObject | |
Map * | map () |
void | set_map (Map *value) |
void | set_map_no_write_barrier (Map *value) |
MapWord | map_word () |
void | set_map_word (MapWord map_word) |
Heap * | GetHeap () |
Isolate * | GetIsolate () |
Address | address () |
void | Iterate (ObjectVisitor *v) |
void | IterateBody (InstanceType type, int object_size, ObjectVisitor *v) |
int | Size () |
int | SizeFromMap (Map *map) |
WriteBarrierMode | GetWriteBarrierMode (const DisallowHeapAllocation &promise) |
void | HeapObjectShortPrint (StringStream *accumulator) |
STATIC_CHECK (kMapOffset==Internals::kHeapObjectMapOffset) | |
Public Member Functions inherited from Object | |
bool | IsObject () |
bool | IsFixedArrayBase () |
bool | IsExternal () |
bool | IsAccessorInfo () |
bool | IsStruct () |
INLINE (bool IsSpecObject()) | |
INLINE (bool IsSpecFunction()) | |
bool | IsCallable () |
INLINE (bool IsUndefined()) | |
INLINE (bool IsNull()) | |
INLINE (bool IsTheHole()) | |
INLINE (bool IsUninitialized()) | |
INLINE (bool IsTrue()) | |
INLINE (bool IsFalse()) | |
bool | IsArgumentsMarker () |
bool | NonFailureIsHeapObject () |
bool | IsFiller () |
double | Number () |
bool | IsNaN () |
bool | ToInt32 (int32_t *value) |
bool | ToUint32 (uint32_t *value) |
Representation | OptimalRepresentation (ValueType type=OPTIMAL_REPRESENTATION) |
bool | FitsRepresentation (Representation representation) |
MaybeObject * | AllocateNewStorageFor (Heap *heap, Representation representation) |
bool | HasValidElements () |
bool | HasSpecificClassOf (String *name) |
MUST_USE_RESULT MaybeObject * | ToObject (Isolate *isolate) |
bool | BooleanValue () |
MUST_USE_RESULT MaybeObject * | ToObject (Context *native_context) |
MUST_USE_RESULT MaybeObject * | ToSmi () |
void | Lookup (Name *name, LookupResult *result) |
MUST_USE_RESULT MaybeObject * | GetProperty (Name *key) |
MUST_USE_RESULT MaybeObject * | GetProperty (Name *key, PropertyAttributes *attributes) |
MUST_USE_RESULT MaybeObject * | GetPropertyWithReceiver (Object *receiver, Name *key, PropertyAttributes *attributes) |
MUST_USE_RESULT MaybeObject * | GetProperty (Object *receiver, LookupResult *result, Name *key, PropertyAttributes *attributes) |
MUST_USE_RESULT MaybeObject * | GetPropertyWithDefinedGetter (Object *receiver, JSReceiver *getter) |
Object * | GetPrototype (Isolate *isolate) |
Map * | GetMarkerMap (Isolate *isolate) |
Object * | GetHash () |
bool | SameValue (Object *other) |
bool | ToArrayIndex (uint32_t *index) |
bool | IsStringObjectWithCharacterAt (uint32_t index) |
void | VerifyApiCallResultType () |
void | ShortPrint (FILE *out=stdout) |
void | ShortPrint (StringStream *accumulator) |
Protected Member Functions inherited from HeapObject | |
void | IteratePointers (ObjectVisitor *v, int start, int end) |
void | IteratePointer (ObjectVisitor *v, int offset) |
void | IterateNextCodeLink (ObjectVisitor *v, int offset) |
Static Protected Member Functions inherited from Name | |
static bool | IsHashFieldComputed (uint32_t field) |
Definition at line 9144 of file objects.cc.
References Heap::AdjustLiveBytes(), ASSERT, ASSERT_OBJECT_ALIGNED, NewSpace::Contains(), Heap::CreateFillerObjectAt(), Isolate::factory(), Heap::FROM_MUTATOR, Heap::isolate(), Heap::new_space(), NewSpace::set_top(), SeqOneByteString::SizeFor(), SeqTwoByteString::SizeFor(), and NewSpace::top().
Referenced by v8::internal::RUNTIME_FUNCTION().
|
static |
Definition at line 9042 of file objects.h.
Referenced by Heap::AllocateOneByteInternalizedString(), Heap::AllocateTwoByteInternalizedString(), and SeqTwoByteString::SeqTwoByteStringGetData().