Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
8c217344
V
vscode
项目概览
xxadev
/
vscode
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
8c217344
编写于
3月 15, 2019
作者:
A
Andre Weinand
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
prepare for strict null checks in extHostDebug
上级
f051893f
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
17 addition
and
9 deletion
+17
-9
src/vs/workbench/api/electron-browser/mainThreadDebugService.ts
.../workbench/api/electron-browser/mainThreadDebugService.ts
+3
-3
src/vs/workbench/api/node/extHost.protocol.ts
src/vs/workbench/api/node/extHost.protocol.ts
+1
-1
src/vs/workbench/contrib/debug/common/debug.ts
src/vs/workbench/contrib/debug/common/debug.ts
+1
-1
src/vs/workbench/contrib/debug/electron-browser/debugConfigurationManager.ts
...ntrib/debug/electron-browser/debugConfigurationManager.ts
+2
-2
src/vs/workbench/contrib/debug/electron-browser/debugService.ts
.../workbench/contrib/debug/electron-browser/debugService.ts
+10
-2
未找到文件。
src/vs/workbench/api/electron-browser/mainThreadDebugService.ts
浏览文件 @
8c217344
...
...
@@ -158,18 +158,18 @@ export class MainThreadDebugService implements MainThreadDebugServiceShape, IDeb
};
if
(
hasProvide
)
{
provider
.
provideDebugConfigurations
=
(
folder
)
=>
{
return
Promise
.
resolve
(
this
.
_proxy
.
$provideDebugConfigurations
(
handle
,
folder
)
);
return
this
.
_proxy
.
$provideDebugConfigurations
(
handle
,
folder
);
};
}
if
(
hasResolve
)
{
provider
.
resolveDebugConfiguration
=
(
folder
,
config
)
=>
{
return
Promise
.
resolve
(
this
.
_proxy
.
$resolveDebugConfiguration
(
handle
,
folder
,
config
)
);
return
this
.
_proxy
.
$resolveDebugConfiguration
(
handle
,
folder
,
config
);
};
}
if
(
hasProvideDebugAdapter
)
{
console
.
info
(
'
DebugConfigurationProvider.debugAdapterExecutable is deprecated and will be removed soon; please use DebugAdapterDescriptorFactory.createDebugAdapterDescriptor instead.
'
);
provider
.
debugAdapterExecutable
=
(
folder
)
=>
{
return
Promise
.
resolve
(
this
.
_proxy
.
$legacyDebugAdapterExecutable
(
handle
,
folder
)
);
return
this
.
_proxy
.
$legacyDebugAdapterExecutable
(
handle
,
folder
);
};
}
this
.
_debugConfigurationProviders
.
set
(
handle
,
provider
);
...
...
src/vs/workbench/api/node/extHost.protocol.ts
浏览文件 @
8c217344
...
...
@@ -1062,7 +1062,7 @@ export interface ExtHostDebugServiceShape {
$startDASession
(
handle
:
number
,
session
:
IDebugSessionDto
):
Promise
<
void
>
;
$stopDASession
(
handle
:
number
):
Promise
<
void
>
;
$sendDAMessage
(
handle
:
number
,
message
:
DebugProtocol
.
ProtocolMessage
):
void
;
$resolveDebugConfiguration
(
handle
:
number
,
folder
:
UriComponents
|
undefined
,
debugConfiguration
:
IConfig
):
Promise
<
IConfig
>
;
$resolveDebugConfiguration
(
handle
:
number
,
folder
:
UriComponents
|
undefined
,
debugConfiguration
:
IConfig
):
Promise
<
IConfig
|
null
|
undefined
>
;
$provideDebugConfigurations
(
handle
:
number
,
folder
:
UriComponents
|
undefined
):
Promise
<
IConfig
[]
>
;
$legacyDebugAdapterExecutable
(
handle
:
number
,
folderUri
:
UriComponents
|
undefined
):
Promise
<
IAdapterDescriptor
>
;
// TODO@AW legacy
$provideDebugAdapter
(
handle
:
number
,
session
:
IDebugSessionDto
):
Promise
<
IAdapterDescriptor
>
;
...
...
src/vs/workbench/contrib/debug/common/debug.ts
浏览文件 @
8c217344
...
...
@@ -542,7 +542,7 @@ export interface IDebuggerContribution extends IPlatformSpecificAdapterContribut
export
interface
IDebugConfigurationProvider
{
readonly
type
:
string
;
resolveDebugConfiguration
?(
folderUri
:
uri
|
undefined
,
debugConfiguration
:
IConfig
):
Promise
<
IConfig
>
;
resolveDebugConfiguration
?(
folderUri
:
uri
|
undefined
,
debugConfiguration
:
IConfig
):
Promise
<
IConfig
|
null
|
undefined
>
;
provideDebugConfigurations
?(
folderUri
:
uri
|
undefined
):
Promise
<
IConfig
[]
>
;
debugAdapterExecutable
?(
folderUri
:
uri
|
undefined
):
Promise
<
IAdapterDescriptor
>
;
// TODO@AW legacy
}
...
...
src/vs/workbench/contrib/debug/electron-browser/debugConfigurationManager.ts
浏览文件 @
8c217344
...
...
@@ -212,9 +212,9 @@ export class ConfigurationManager implements IConfigurationManager {
return
providers
.
length
>
0
;
}
resolveConfigurationByProviders
(
folderUri
:
uri
|
undefined
,
type
:
string
|
undefined
,
debugConfiguration
:
IConfig
):
Promise
<
IConfig
>
{
resolveConfigurationByProviders
(
folderUri
:
uri
|
undefined
,
type
:
string
|
undefined
,
debugConfiguration
:
IConfig
):
Promise
<
IConfig
|
null
|
undefined
>
{
return
this
.
activateDebuggers
(
'
onDebugResolve
'
,
type
).
then
(()
=>
{
// pipe the config through the promises sequentially.
a
ppend at the end the '*' types
// pipe the config through the promises sequentially.
A
ppend at the end the '*' types
const
providers
=
this
.
configProviders
.
filter
(
p
=>
p
.
type
===
type
&&
p
.
resolveDebugConfiguration
)
.
concat
(
this
.
configProviders
.
filter
(
p
=>
p
.
type
===
'
*
'
&&
p
.
resolveDebugConfiguration
));
...
...
src/vs/workbench/contrib/debug/electron-browser/debugService.ts
浏览文件 @
8c217344
...
...
@@ -591,12 +591,20 @@ export class DebugService implements IDebugService {
}
}
let
substitutionThenable
:
Promise
<
IConfig
|
undefined
>
=
Promise
.
resolve
(
session
.
configuration
);
let
substitutionThenable
:
Promise
<
IConfig
|
null
|
undefined
>
=
Promise
.
resolve
(
session
.
configuration
);
if
(
launch
&&
needsToSubstitute
&&
unresolved
)
{
substitutionThenable
=
this
.
configurationManager
.
resolveConfigurationByProviders
(
launch
.
workspace
?
launch
.
workspace
.
uri
:
undefined
,
unresolved
.
type
,
unresolved
)
.
then
(
resolved
=>
this
.
substituteVariables
(
launch
,
resolved
));
.
then
(
resolved
=>
{
if
(
resolved
)
{
return
this
.
substituteVariables
(
launch
,
resolved
);
}
else
{
// resolve is null or undefined here
return
Promise
.
resolve
(
resolved
);
}
});
}
substitutionThenable
.
then
(
resolved
=>
{
if
(
!
resolved
)
{
return
c
(
undefined
);
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录