Index: src/accessors.cc |
diff --git a/src/accessors.cc b/src/accessors.cc |
index 662a9e126b04b1bad9489ddb468c09666436eff1..9b61608db2fed8062146ccd29b5a8b389a43f57c 100644 |
--- a/src/accessors.cc |
+++ b/src/accessors.cc |
@@ -787,6 +787,40 @@ Handle<AccessorInfo> Accessors::ScriptSourceMappingUrlInfo( |
// |
+// Accessors::ScriptIsDebuggerScript |
+// |
+ |
+ |
+void Accessors::ScriptIsDebuggerScriptGetter( |
+ v8::Local<v8::Name> name, const v8::PropertyCallbackInfo<v8::Value>& info) { |
+ i::Isolate* isolate = reinterpret_cast<i::Isolate*>(info.GetIsolate()); |
+ DisallowHeapAllocation no_allocation; |
+ HandleScope scope(isolate); |
+ Object* object = *Utils::OpenHandle(*info.This()); |
+ bool is_debugger_script = |
+ Script::cast(JSValue::cast(object)->value())->is_debugger_script(); |
+ Object* res = *isolate->factory()->ToBoolean(is_debugger_script); |
+ info.GetReturnValue().Set(Utils::ToLocal(Handle<Object>(res, isolate))); |
+} |
+ |
+ |
+void Accessors::ScriptIsDebuggerScriptSetter( |
+ v8::Local<v8::Name> name, v8::Local<v8::Value> value, |
+ const v8::PropertyCallbackInfo<void>& info) { |
+ UNREACHABLE(); |
+} |
+ |
+ |
+Handle<AccessorInfo> Accessors::ScriptIsDebuggerScriptInfo( |
+ Isolate* isolate, PropertyAttributes attributes) { |
+ Handle<String> name(isolate->factory()->InternalizeOneByteString( |
+ STATIC_CHAR_VECTOR("is_debugger_script"))); |
+ return MakeAccessor(isolate, name, &ScriptIsDebuggerScriptGetter, |
+ &ScriptIsDebuggerScriptSetter, attributes); |
+} |
+ |
+ |
+// |
// Accessors::ScriptGetContextData |
// |