Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
38d4a547
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,体验更适合开发者的 AI 搜索 >>
提交
38d4a547
编写于
12月 13, 2018
作者:
R
Rudi Chen
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
strictNullCheck outlineModel.ts inheritance errors
上级
9bbe60f5
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
11 addition
and
9 deletion
+11
-9
src/vs/editor/contrib/documentSymbols/outlineModel.ts
src/vs/editor/contrib/documentSymbols/outlineModel.ts
+11
-9
未找到文件。
src/vs/editor/contrib/documentSymbols/outlineModel.ts
浏览文件 @
38d4a547
...
...
@@ -20,12 +20,14 @@ export abstract class TreeElement {
abstract
id
:
string
;
abstract
children
:
{
[
id
:
string
]:
TreeElement
};
abstract
parent
:
TreeElement
;
abstract
parent
:
TreeElement
|
undefined
;
abstract
adopt
(
newParent
:
TreeElement
):
TreeElement
;
remove
():
void
{
delete
this
.
parent
.
children
[
this
.
id
];
if
(
this
.
parent
)
{
delete
this
.
parent
.
children
[
this
.
id
];
}
}
static
findId
(
candidate
:
DocumentSymbol
|
string
,
container
:
TreeElement
):
string
{
...
...
@@ -93,13 +95,13 @@ export class OutlineElement extends TreeElement {
constructor
(
readonly
id
:
string
,
public
parent
:
OutlineModel
|
OutlineGroup
|
OutlineElement
,
public
parent
:
TreeElement
|
undefined
,
readonly
symbol
:
DocumentSymbol
)
{
super
();
}
adopt
(
parent
:
OutlineModel
|
OutlineGroup
|
Outlin
eElement
):
OutlineElement
{
adopt
(
parent
:
Tre
eElement
):
OutlineElement
{
let
res
=
new
OutlineElement
(
this
.
id
,
parent
,
this
.
symbol
);
forEach
(
this
.
children
,
entry
=>
res
.
children
[
entry
.
key
]
=
entry
.
value
.
adopt
(
res
));
return
res
;
...
...
@@ -112,14 +114,14 @@ export class OutlineGroup extends TreeElement {
constructor
(
readonly
id
:
string
,
public
parent
:
OutlineModel
,
public
parent
:
TreeElement
|
undefined
,
readonly
provider
:
DocumentSymbolProvider
,
readonly
providerIndex
:
number
,
)
{
super
();
}
adopt
(
parent
:
OutlineModel
):
OutlineGroup
{
adopt
(
parent
:
TreeElement
):
OutlineGroup
{
let
res
=
new
OutlineGroup
(
this
.
id
,
parent
,
this
.
provider
,
this
.
providerIndex
);
forEach
(
this
.
children
,
entry
=>
res
.
children
[
entry
.
key
]
=
entry
.
value
.
adopt
(
res
));
return
res
;
...
...
@@ -332,7 +334,7 @@ export class OutlineModel extends TreeElement {
container
.
children
[
res
.
id
]
=
res
;
}
static
get
(
element
:
TreeElement
):
OutlineModel
|
undefined
{
static
get
(
element
:
TreeElement
|
undefined
):
OutlineModel
|
undefined
{
while
(
element
)
{
if
(
element
instanceof
OutlineModel
)
{
return
element
;
...
...
@@ -391,7 +393,7 @@ export class OutlineModel extends TreeElement {
return
true
;
}
private
_matches
:
[
string
,
OutlineElement
];
private
_matches
:
[
string
,
OutlineElement
|
undefined
];
updateMatches
(
pattern
:
string
):
OutlineElement
|
undefined
{
if
(
this
.
_matches
&&
this
.
_matches
[
0
]
===
pattern
)
{
...
...
@@ -429,7 +431,7 @@ export class OutlineModel extends TreeElement {
return
result
;
}
getItemById
(
id
:
string
):
TreeElement
{
getItemById
(
id
:
string
):
TreeElement
|
undefined
{
return
TreeElement
.
getElementById
(
id
,
this
);
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录