diff options
Diffstat (limited to 'deps/v8/src/inspector/v8-internal-value-type.cc')
-rw-r--r-- | deps/v8/src/inspector/v8-internal-value-type.cc | 75 |
1 files changed, 0 insertions, 75 deletions
diff --git a/deps/v8/src/inspector/v8-internal-value-type.cc b/deps/v8/src/inspector/v8-internal-value-type.cc deleted file mode 100644 index 54e839e64e..0000000000 --- a/deps/v8/src/inspector/v8-internal-value-type.cc +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright 2016 the V8 project authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "src/inspector/v8-internal-value-type.h" - -#include "src/inspector/string-util.h" - -namespace v8_inspector { - -namespace { - -v8::Local<v8::Private> internalSubtypePrivate(v8::Isolate* isolate) { - return v8::Private::ForApi( - isolate, - toV8StringInternalized(isolate, "V8InternalType#internalSubtype")); -} - -v8::Local<v8::String> subtypeForInternalType(v8::Isolate* isolate, - V8InternalValueType type) { - switch (type) { - case V8InternalValueType::kEntry: - return toV8StringInternalized(isolate, "internal#entry"); - case V8InternalValueType::kLocation: - return toV8StringInternalized(isolate, "internal#location"); - case V8InternalValueType::kScope: - return toV8StringInternalized(isolate, "internal#scope"); - case V8InternalValueType::kScopeList: - return toV8StringInternalized(isolate, "internal#scopeList"); - } - UNREACHABLE(); -} - -} // namespace - -bool markAsInternal(v8::Local<v8::Context> context, - v8::Local<v8::Object> object, V8InternalValueType type) { - v8::Isolate* isolate = context->GetIsolate(); - v8::Local<v8::Private> privateValue = internalSubtypePrivate(isolate); - v8::Local<v8::String> subtype = subtypeForInternalType(isolate, type); - return object->SetPrivate(context, privateValue, subtype).FromMaybe(false); -} - -bool markArrayEntriesAsInternal(v8::Local<v8::Context> context, - v8::Local<v8::Array> array, - V8InternalValueType type) { - v8::Isolate* isolate = context->GetIsolate(); - v8::Local<v8::Private> privateValue = internalSubtypePrivate(isolate); - v8::Local<v8::String> subtype = subtypeForInternalType(isolate, type); - for (uint32_t i = 0; i < array->Length(); ++i) { - v8::Local<v8::Value> entry; - if (!array->Get(context, i).ToLocal(&entry) || !entry->IsObject()) - return false; - if (!entry.As<v8::Object>() - ->SetPrivate(context, privateValue, subtype) - .FromMaybe(false)) - return false; - } - return true; -} - -v8::Local<v8::Value> v8InternalValueTypeFrom(v8::Local<v8::Context> context, - v8::Local<v8::Object> object) { - v8::Isolate* isolate = context->GetIsolate(); - v8::Local<v8::Private> privateValue = internalSubtypePrivate(isolate); - if (!object->HasPrivate(context, privateValue).FromMaybe(false)) - return v8::Null(isolate); - v8::Local<v8::Value> subtypeValue; - if (!object->GetPrivate(context, privateValue).ToLocal(&subtypeValue) || - !subtypeValue->IsString()) - return v8::Null(isolate); - return subtypeValue; -} - -} // namespace v8_inspector |