| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "platform/v8_inspector/V8Console.h" | 5 #include "platform/v8_inspector/V8Console.h" |
| 6 | 6 |
| 7 #include "platform/inspector_protocol/Platform.h" | 7 #include "platform/inspector_protocol/Platform.h" |
| 8 #include "platform/inspector_protocol/String16.h" | 8 #include "platform/inspector_protocol/String16.h" |
| 9 #include "platform/v8_inspector/InjectedScript.h" | 9 #include "platform/v8_inspector/InjectedScript.h" |
| 10 #include "platform/v8_inspector/InspectedContext.h" | 10 #include "platform/v8_inspector/InspectedContext.h" |
| (...skipping 342 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 353 | 353 |
| 354 void V8Console::countCallback(const v8::FunctionCallbackInfo<v8::Value>& info) | 354 void V8Console::countCallback(const v8::FunctionCallbackInfo<v8::Value>& info) |
| 355 { | 355 { |
| 356 ConsoleHelper helper(info); | 356 ConsoleHelper helper(info); |
| 357 | 357 |
| 358 String16 title = helper.firstArgToString(String16()); | 358 String16 title = helper.firstArgToString(String16()); |
| 359 String16 identifier; | 359 String16 identifier; |
| 360 if (title.isEmpty()) { | 360 if (title.isEmpty()) { |
| 361 std::unique_ptr<V8StackTraceImpl> stackTrace = V8StackTraceImpl::capture
(nullptr, 0, 1); | 361 std::unique_ptr<V8StackTraceImpl> stackTrace = V8StackTraceImpl::capture
(nullptr, 0, 1); |
| 362 if (stackTrace) | 362 if (stackTrace) |
| 363 identifier = stackTrace->topSourceURL() + ":" + String16::fromIntege
r(stackTrace->topLineNumber()); | 363 identifier = stackTrace->topSourceURL() + ":" + protocol::string16Fr
omInteger(stackTrace->topLineNumber()); |
| 364 } else { | 364 } else { |
| 365 identifier = title + "@"; | 365 identifier = title + "@"; |
| 366 } | 366 } |
| 367 | 367 |
| 368 v8::Local<v8::Map> countMap; | 368 v8::Local<v8::Map> countMap; |
| 369 if (!helper.privateMap("V8Console#countMap").ToLocal(&countMap)) | 369 if (!helper.privateMap("V8Console#countMap").ToLocal(&countMap)) |
| 370 return; | 370 return; |
| 371 int64_t count = helper.getIntFromMap(countMap, identifier, 0) + 1; | 371 int64_t count = helper.getIntFromMap(countMap, identifier, 0) + 1; |
| 372 helper.setIntOnMap(countMap, identifier, count); | 372 helper.setIntOnMap(countMap, identifier, count); |
| 373 helper.reportCallWithArgument(ConsoleAPIType::kCount, title + ": " + String1
6::fromInteger(count)); | 373 helper.reportCallWithArgument(ConsoleAPIType::kCount, title + ": " + protoco
l::string16FromInteger(count)); |
| 374 } | 374 } |
| 375 | 375 |
| 376 void V8Console::assertCallback(const v8::FunctionCallbackInfo<v8::Value>& info) | 376 void V8Console::assertCallback(const v8::FunctionCallbackInfo<v8::Value>& info) |
| 377 { | 377 { |
| 378 ConsoleHelper helper(info); | 378 ConsoleHelper helper(info); |
| 379 if (helper.firstArgToBoolean(false)) | 379 if (helper.firstArgToBoolean(false)) |
| 380 return; | 380 return; |
| 381 | 381 |
| 382 std::vector<v8::Local<v8::Value>> arguments; | 382 std::vector<v8::Local<v8::Value>> arguments; |
| 383 for (int i = 1; i < info.Length(); ++i) | 383 for (int i = 1; i < info.Length(); ++i) |
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 432 if (V8InspectorClient* client = helper.ensureDebuggerClient()) { | 432 if (V8InspectorClient* client = helper.ensureDebuggerClient()) { |
| 433 String16 protocolTitle = helper.firstArgToString("default"); | 433 String16 protocolTitle = helper.firstArgToString("default"); |
| 434 if (timelinePrefix) | 434 if (timelinePrefix) |
| 435 protocolTitle = "Timeline '" + protocolTitle + "'"; | 435 protocolTitle = "Timeline '" + protocolTitle + "'"; |
| 436 client->consoleTimeEnd(protocolTitle); | 436 client->consoleTimeEnd(protocolTitle); |
| 437 | 437 |
| 438 v8::Local<v8::Map> timeMap; | 438 v8::Local<v8::Map> timeMap; |
| 439 if (!helper.privateMap("V8Console#timeMap").ToLocal(&timeMap)) | 439 if (!helper.privateMap("V8Console#timeMap").ToLocal(&timeMap)) |
| 440 return; | 440 return; |
| 441 double elapsed = client->currentTimeMS() - helper.getDoubleFromMap(timeM
ap, protocolTitle, 0.0); | 441 double elapsed = client->currentTimeMS() - helper.getDoubleFromMap(timeM
ap, protocolTitle, 0.0); |
| 442 String16 message = protocolTitle + ": " + String16::fromDoubleFixedPreci
sion(elapsed, 3) + "ms"; | 442 String16 message = protocolTitle + ": " + protocol::string16FromDoublePr
ecision3(elapsed) + "ms"; |
| 443 helper.reportCallWithArgument(ConsoleAPIType::kTimeEnd, message); | 443 helper.reportCallWithArgument(ConsoleAPIType::kTimeEnd, message); |
| 444 } | 444 } |
| 445 } | 445 } |
| 446 | 446 |
| 447 void V8Console::timelineCallback(const v8::FunctionCallbackInfo<v8::Value>& info
) | 447 void V8Console::timelineCallback(const v8::FunctionCallbackInfo<v8::Value>& info
) |
| 448 { | 448 { |
| 449 ConsoleHelper(info).reportDeprecatedCall("V8Console#timeline", "'console.tim
eline' is deprecated. Please use 'console.time' instead."); | 449 ConsoleHelper(info).reportDeprecatedCall("V8Console#timeline", "'console.tim
eline' is deprecated. Please use 'console.time' instead."); |
| 450 timeFunction(info, true); | 450 timeFunction(info, true); |
| 451 } | 451 } |
| 452 | 452 |
| (...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 528 continue; | 528 continue; |
| 529 } | 529 } |
| 530 info.GetReturnValue().Set(values); | 530 info.GetReturnValue().Set(values); |
| 531 } | 531 } |
| 532 | 532 |
| 533 static void setFunctionBreakpoint(ConsoleHelper& helper, v8::Local<v8::Function>
function, V8DebuggerAgentImpl::BreakpointSource source, const String16& conditi
on, bool enable) | 533 static void setFunctionBreakpoint(ConsoleHelper& helper, v8::Local<v8::Function>
function, V8DebuggerAgentImpl::BreakpointSource source, const String16& conditi
on, bool enable) |
| 534 { | 534 { |
| 535 V8DebuggerAgentImpl* debuggerAgent = helper.debuggerAgent(); | 535 V8DebuggerAgentImpl* debuggerAgent = helper.debuggerAgent(); |
| 536 if (!debuggerAgent) | 536 if (!debuggerAgent) |
| 537 return; | 537 return; |
| 538 String16 scriptId = String16::fromInteger(function->ScriptId()); | 538 String16 scriptId = protocol::string16FromInteger(function->ScriptId()); |
| 539 int lineNumber = function->GetScriptLineNumber(); | 539 int lineNumber = function->GetScriptLineNumber(); |
| 540 int columnNumber = function->GetScriptColumnNumber(); | 540 int columnNumber = function->GetScriptColumnNumber(); |
| 541 if (lineNumber == v8::Function::kLineOffsetNotFound || columnNumber == v8::F
unction::kLineOffsetNotFound) | 541 if (lineNumber == v8::Function::kLineOffsetNotFound || columnNumber == v8::F
unction::kLineOffsetNotFound) |
| 542 return; | 542 return; |
| 543 if (enable) | 543 if (enable) |
| 544 debuggerAgent->setBreakpointAt(scriptId, lineNumber, columnNumber, sourc
e, condition); | 544 debuggerAgent->setBreakpointAt(scriptId, lineNumber, columnNumber, sourc
e, condition); |
| 545 else | 545 else |
| 546 debuggerAgent->removeBreakpointAt(scriptId, lineNumber, columnNumber, so
urce); | 546 debuggerAgent->removeBreakpointAt(scriptId, lineNumber, columnNumber, so
urce); |
| 547 } | 547 } |
| 548 | 548 |
| (...skipping 274 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 823 continue; | 823 continue; |
| 824 if (name->IsString()) { | 824 if (name->IsString()) { |
| 825 v8::Local<v8::Value> descriptor; | 825 v8::Local<v8::Value> descriptor; |
| 826 bool success = m_global->GetOwnPropertyDescriptor(m_context, v8::Loc
al<v8::String>::Cast(name)).ToLocal(&descriptor); | 826 bool success = m_global->GetOwnPropertyDescriptor(m_context, v8::Loc
al<v8::String>::Cast(name)).ToLocal(&descriptor); |
| 827 DCHECK(success); | 827 DCHECK(success); |
| 828 } | 828 } |
| 829 } | 829 } |
| 830 } | 830 } |
| 831 | 831 |
| 832 } // namespace blink | 832 } // namespace blink |
| OLD | NEW |