v8.h | v8.h | |||
---|---|---|---|---|
skipping to change at line 4137 | skipping to change at line 4137 | |||
static const int kExternalTwoByteRepresentationTag = 0x02; | static const int kExternalTwoByteRepresentationTag = 0x02; | |||
static const int kExternalAsciiRepresentationTag = 0x06; | static const int kExternalAsciiRepresentationTag = 0x06; | |||
static const int kIsolateStateOffset = 0; | static const int kIsolateStateOffset = 0; | |||
static const int kIsolateEmbedderDataOffset = 1 * kApiPointerSize; | static const int kIsolateEmbedderDataOffset = 1 * kApiPointerSize; | |||
static const int kIsolateRootsOffset = 3 * kApiPointerSize; | static const int kIsolateRootsOffset = 3 * kApiPointerSize; | |||
static const int kUndefinedValueRootIndex = 5; | static const int kUndefinedValueRootIndex = 5; | |||
static const int kNullValueRootIndex = 7; | static const int kNullValueRootIndex = 7; | |||
static const int kTrueValueRootIndex = 8; | static const int kTrueValueRootIndex = 8; | |||
static const int kFalseValueRootIndex = 9; | static const int kFalseValueRootIndex = 9; | |||
static const int kEmptySymbolRootIndex = 119; | static const int kEmptyStringRootIndex = 119; | |||
static const int kNodeClassIdOffset = 1 * kApiPointerSize; | static const int kNodeClassIdOffset = 1 * kApiPointerSize; | |||
static const int kNodeFlagsOffset = 1 * kApiPointerSize + 3; | static const int kNodeFlagsOffset = 1 * kApiPointerSize + 3; | |||
static const int kNodeStateMask = 0xf; | static const int kNodeStateMask = 0xf; | |||
static const int kNodeStateIsWeakValue = 2; | static const int kNodeStateIsWeakValue = 2; | |||
static const int kNodeStateIsNearDeathValue = 4; | static const int kNodeStateIsNearDeathValue = 4; | |||
static const int kNodeIsIndependentShift = 4; | static const int kNodeIsIndependentShift = 4; | |||
static const int kNodeIsPartiallyDependentShift = 5; | static const int kNodeIsPartiallyDependentShift = 5; | |||
static const int kJSObjectType = 0xad; | static const int kJSObjectType = 0xae; | |||
static const int kFirstNonstringType = 0x80; | static const int kFirstNonstringType = 0x80; | |||
static const int kOddballType = 0x82; | static const int kOddballType = 0x83; | |||
static const int kForeignType = 0x85; | static const int kForeignType = 0x86; | |||
static const int kUndefinedOddballKind = 5; | static const int kUndefinedOddballKind = 5; | |||
static const int kNullOddballKind = 3; | static const int kNullOddballKind = 3; | |||
V8_INLINE(static bool HasHeapObjectTag(internal::Object* value)) { | V8_INLINE(static bool HasHeapObjectTag(internal::Object* value)) { | |||
return ((reinterpret_cast<intptr_t>(value) & kHeapObjectTagMask) == | return ((reinterpret_cast<intptr_t>(value) & kHeapObjectTagMask) == | |||
kHeapObjectTag); | kHeapObjectTag); | |||
} | } | |||
V8_INLINE(static int SmiValue(internal::Object* value)) { | V8_INLINE(static int SmiValue(internal::Object* value)) { | |||
skipping to change at line 4556 | skipping to change at line 4556 | |||
#ifdef V8_ENABLE_CHECKS | #ifdef V8_ENABLE_CHECKS | |||
CheckCast(value); | CheckCast(value); | |||
#endif | #endif | |||
return static_cast<String*>(value); | return static_cast<String*>(value); | |||
} | } | |||
Local<String> String::Empty(Isolate* isolate) { | Local<String> String::Empty(Isolate* isolate) { | |||
typedef internal::Object* S; | typedef internal::Object* S; | |||
typedef internal::Internals I; | typedef internal::Internals I; | |||
if (!I::IsInitialized(isolate)) return Empty(); | if (!I::IsInitialized(isolate)) return Empty(); | |||
S* slot = I::GetRoot(isolate, I::kEmptySymbolRootIndex); | S* slot = I::GetRoot(isolate, I::kEmptyStringRootIndex); | |||
return Local<String>(reinterpret_cast<String*>(slot)); | return Local<String>(reinterpret_cast<String*>(slot)); | |||
} | } | |||
String::ExternalStringResource* String::GetExternalStringResource() const { | String::ExternalStringResource* String::GetExternalStringResource() const { | |||
typedef internal::Object O; | typedef internal::Object O; | |||
typedef internal::Internals I; | typedef internal::Internals I; | |||
O* obj = *reinterpret_cast<O**>(const_cast<String*>(this)); | O* obj = *reinterpret_cast<O**>(const_cast<String*>(this)); | |||
String::ExternalStringResource* result; | String::ExternalStringResource* result; | |||
if (I::IsExternalTwoByteString(I::GetInstanceType(obj))) { | if (I::IsExternalTwoByteString(I::GetInstanceType(obj))) { | |||
void* value = I::ReadField<void*>(obj, I::kStringResourceOffset); | void* value = I::ReadField<void*>(obj, I::kStringResourceOffset); | |||
End of changes. 4 change blocks. | ||||
5 lines changed or deleted | 5 lines changed or added | |||