From ca47896204482bf4a6979e3838bf7f09f61cebeb Mon Sep 17 00:00:00 2001
From: giy <giy@omp-system.ru>
Date: Fri, 02 Sep 2022 14:16:56 +0300
Subject: [PATCH] Обновление до версии 2.9.0
---
QtVsTools.Package/QML/Debugging/QmlDebugger.cs | 47 +++++++++++++++++++++--------------------------
1 files changed, 21 insertions(+), 26 deletions(-)
diff --git a/QtVsTools.Package/QML/Debugging/QmlDebugger.cs b/QtVsTools.Package/QML/Debugging/QmlDebugger.cs
index 892a17d..b877956 100644
--- a/QtVsTools.Package/QML/Debugging/QmlDebugger.cs
+++ b/QtVsTools.Package/QML/Debugging/QmlDebugger.cs
@@ -26,18 +26,19 @@
**
****************************************************************************/
-using System;
using System.Collections.Generic;
-using System.IO;
using System.Linq;
using System.Threading.Tasks;
-using QtVsTools.SyntaxAnalysis;
-using static QtVsTools.SyntaxAnalysis.RegExpr;
-using RegExprParser = QtVsTools.SyntaxAnalysis.RegExpr.Parser;
namespace QtVsTools.Qml.Debug
{
+ using Common;
+ using SyntaxAnalysis;
using V4;
+
+ using RegExprParser = SyntaxAnalysis.RegExpr.Parser;
+
+ using static SyntaxAnalysis.RegExpr;
struct FrameInfo
{
@@ -69,6 +70,8 @@
class QmlDebugger : Disposable, IMessageEventSink
{
+ static LazyFactory StaticLazy { get; } = new LazyFactory();
+
IDebuggerEventSink sink;
ProtocolDriver driver;
string connectionHostName;
@@ -80,11 +83,11 @@
List<Request> outbox;
Dictionary<int, IBreakpoint> breakpoints;
- public bool Started { get; private set; }
+ private bool Started { get; set; }
- public bool Running { get; private set; }
+ private bool Running { get; set; }
- public string Version { get; private set; }
+ private string Version { get; set; }
public uint? ThreadId { get { return driver.ThreadId; } }
@@ -160,7 +163,7 @@
if (!Started) {
Running = Started = true;
LeaveCriticalSection();
- Task.Run(() => ConnectToDebugger());
+ _ = Task.Run(() => ConnectToDebugger());
} else if (!Running) {
Running = true;
@@ -201,7 +204,7 @@
setBreakpoint.Arguments.Line = (int)breakpoint.Line;
setBreakpoint.Tag = breakpoint;
if (driver.ConnectionState == DebugClientState.Connected)
- setBreakpoint.SendAsync();
+ setBreakpoint.SendRequest();
else
ThreadSafe(() => outbox.Add(setBreakpoint));
}
@@ -231,7 +234,7 @@
var reqClearBreak = Message.Create<ClearBreakpointRequest>(driver);
reqClearBreak.Arguments.Breakpoint = breakpointNum[breakpoint];
- reqClearBreak.SendAsync();
+ reqClearBreak.SendRequest();
}
void RefreshFrames()
@@ -286,8 +289,7 @@
} else {
foreach (int breakpointId in evtBreak.Body.Breakpoints) {
- IBreakpoint breakpoint;
- if (!breakpoints.TryGetValue(breakpointId, out breakpoint))
+ if (!breakpoints.TryGetValue(breakpointId, out IBreakpoint breakpoint))
continue;
breakpoint.NotifyBreak();
}
@@ -406,20 +408,20 @@
{
if (oldState != DebugClientState.Unavailable
&& newState == DebugClientState.Disconnected) {
- Task.Run(() => sink.NotifyClientDisconnected());
+ _ = Task.Run(() => sink.NotifyClientDisconnected());
}
}
void IMessageEventSink.NotifyRequestResponded(Request msgRequest)
{
if (msgRequest is SetBreakpointRequest)
- Task.Run(() => SetBreakpointResponded(msgRequest as SetBreakpointRequest));
+ _ = Task.Run(() => SetBreakpointResponded(msgRequest as SetBreakpointRequest));
}
void IMessageEventSink.NotifyEvent(Event msgEvent)
{
if (msgEvent is BreakEvent)
- Task.Run(() => BreakNotified(msgEvent as BreakEvent));
+ _ = Task.Run(() => BreakNotified(msgEvent as BreakEvent));
}
void IMessageEventSink.NotifyMessage(Message msg)
@@ -430,13 +432,7 @@
public static bool CheckCommandLine(string execPath, string args)
{
- ushort portFrom;
- ushort portTo;
- string hostName;
- string fileName;
- bool block;
- return ParseCommandLine(
- execPath, args, out portFrom, out portTo, out hostName, out fileName, out block);
+ return ParseCommandLine(execPath, args, out _, out _, out _, out _, out _);
}
/// <summary>
@@ -456,8 +452,8 @@
/// <summary>
/// Regex-based parser for QML debug connection parameters
/// </summary>
- static RegExprParser ConnectParamsParser => _ConnectParamsParser ?? (
- _ConnectParamsParser = new Token(TokenId.ConnectParams, RxConnectParams)
+ static RegExprParser ConnectParamsParser => StaticLazy.Get(() =>
+ ConnectParamsParser, () => new Token(TokenId.ConnectParams, RxConnectParams)
{
new Rule<ConnectParams>
{
@@ -469,7 +465,6 @@
}
}
.Render());
- static RegExprParser _ConnectParamsParser;
/// <summary>
/// Regular expression for parsing connection parameters string in the form:
--
Gitblit v1.9.1