Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
lwm1986
roslyn
提交
013a882e
R
roslyn
项目概览
lwm1986
/
roslyn
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
roslyn
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
013a882e
编写于
7月 12, 2016
作者:
C
CyrusNajmabadi
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Remove blocking on async calls.
上级
80e33adb
变更
31
隐藏空白更改
内联
并排
Showing
31 changed file
with
56 addition
and
57 deletion
+56
-57
src/EditorFeatures/CSharp/AutomaticCompletion/AutomaticLineEnderCommandHandler.cs
...p/AutomaticCompletion/AutomaticLineEnderCommandHandler.cs
+2
-2
src/EditorFeatures/Core/Implementation/AutomaticCompletion/AbstractAutomaticLineEnderCommandHandler.cs
...ticCompletion/AbstractAutomaticLineEnderCommandHandler.cs
+1
-1
src/EditorFeatures/Core/Implementation/CodeActions/CodeActionEditHandlerService.cs
...mplementation/CodeActions/CodeActionEditHandlerService.cs
+3
-3
src/EditorFeatures/Core/Implementation/CommentSelection/AbstractCommentUncommentService.cs
...ation/CommentSelection/AbstractCommentUncommentService.cs
+2
-4
src/EditorFeatures/Core/Implementation/Formatting/Indentation/AbstractSmartTokenFormatterCommandHandler.cs
.../Indentation/AbstractSmartTokenFormatterCommandHandler.cs
+3
-3
src/EditorFeatures/Core/Implementation/GoToDefinition/AbstractGoToDefinitionService.cs
...mentation/GoToDefinition/AbstractGoToDefinitionService.cs
+1
-1
src/EditorFeatures/Core/Implementation/InlineRename/InlineRenameSession.cs
...s/Core/Implementation/InlineRename/InlineRenameSession.cs
+1
-1
src/EditorFeatures/Core/Implementation/Preview/PreviewFactoryService.cs
...ures/Core/Implementation/Preview/PreviewFactoryService.cs
+1
-1
src/EditorFeatures/Core/Implementation/RenameTracking/RenameTrackingTaggerProvider.RenameTrackingCommitter.cs
...g/RenameTrackingTaggerProvider.RenameTrackingCommitter.cs
+1
-1
src/EditorFeatures/Core/Shared/Extensions/ITextSnapshotExtensions.cs
...eatures/Core/Shared/Extensions/ITextSnapshotExtensions.cs
+1
-1
src/EditorFeatures/VisualBasic/AutomaticCompletion/AutomaticLineEnderCommandHandler.vb
...c/AutomaticCompletion/AutomaticLineEnderCommandHandler.vb
+1
-1
src/EditorFeatures/VisualBasic/AutomaticEndConstructCorrection/AutomaticEndConstructCorrector.vb
...cEndConstructCorrection/AutomaticEndConstructCorrector.vb
+1
-1
src/EditorFeatures/VisualBasic/EndConstructGeneration/EndConstructCommandHandler.vb
...asic/EndConstructGeneration/EndConstructCommandHandler.vb
+1
-1
src/EditorFeatures/VisualBasic/LineCommit/CommitFormatter.vb
src/EditorFeatures/VisualBasic/LineCommit/CommitFormatter.vb
+1
-1
src/EditorFeatures/VisualBasic/NavigationBar/VisualBasicNavigationBarItemService.vb
...asic/NavigationBar/VisualBasicNavigationBarItemService.vb
+1
-1
src/Features/CSharp/Portable/ExtractInterface/CSharpExtractInterfaceService.cs
...ortable/ExtractInterface/CSharpExtractInterfaceService.cs
+1
-1
src/Features/Core/Portable/ChangeSignature/AbstractChangeSignatureService.cs
...ortable/ChangeSignature/AbstractChangeSignatureService.cs
+1
-1
src/Features/Core/Portable/ExtractInterface/AbstractExtractInterfaceService.cs
...table/ExtractInterface/AbstractExtractInterfaceService.cs
+2
-1
src/Features/VisualBasic/Portable/ExtractInterface/VisualBasicExtractInterfaceService.vb
...le/ExtractInterface/VisualBasicExtractInterfaceService.vb
+5
-3
src/VisualStudio/CSharp/Impl/Snippets/SnippetExpansionClient.cs
...sualStudio/CSharp/Impl/Snippets/SnippetExpansionClient.cs
+2
-2
src/VisualStudio/CSharp/Impl/Snippets/SnippetFunctions/SnippetFunctionGenerateSwitchCases.cs
...ts/SnippetFunctions/SnippetFunctionGenerateSwitchCases.cs
+3
-4
src/VisualStudio/CSharp/Impl/Snippets/SnippetFunctions/SnippetFunctionSimpleTypeName.cs
...nippets/SnippetFunctions/SnippetFunctionSimpleTypeName.cs
+3
-4
src/VisualStudio/Core/Def/Implementation/AbstractEditorFactory.cs
...alStudio/Core/Def/Implementation/AbstractEditorFactory.cs
+1
-1
src/VisualStudio/Core/Def/Implementation/LanguageService/AbstractLanguageService`2.IVsLanguageTextOps.cs
...geService/AbstractLanguageService`2.IVsLanguageTextOps.cs
+1
-1
src/VisualStudio/Core/Def/Implementation/Venus/ContainedDocument.cs
...Studio/Core/Def/Implementation/Venus/ContainedDocument.cs
+2
-2
src/VisualStudio/Core/Def/Implementation/Venus/ContainedLanguageCodeSupport.cs
.../Def/Implementation/Venus/ContainedLanguageCodeSupport.cs
+2
-1
src/VisualStudio/Core/Def/Implementation/Workspace/VisualStudioFormattingRuleFactoryServiceFactory.cs
...kspace/VisualStudioFormattingRuleFactoryServiceFactory.cs
+1
-1
src/VisualStudio/Core/Impl/CodeModel/AbstractCodeModelService.cs
...ualStudio/Core/Impl/CodeModel/AbstractCodeModelService.cs
+4
-4
src/VisualStudio/VisualBasic/Impl/Snippets/SnippetExpansionClient.vb
...tudio/VisualBasic/Impl/Snippets/SnippetExpansionClient.vb
+2
-2
src/VisualStudio/VisualBasic/Impl/Snippets/SnippetFunctions/SnippetFunctionGenerateSwitchCases.vb
...ts/SnippetFunctions/SnippetFunctionGenerateSwitchCases.vb
+3
-4
src/VisualStudio/VisualBasic/Impl/Snippets/SnippetFunctions/SnippetFunctionSimpleTypeName.vb
...nippets/SnippetFunctions/SnippetFunctionSimpleTypeName.vb
+2
-2
未找到文件。
src/EditorFeatures/CSharp/AutomaticCompletion/AutomaticLineEnderCommandHandler.cs
浏览文件 @
013a882e
...
...
@@ -43,7 +43,7 @@ protected override void NextAction(IEditorOperations editorOperation, Action nex
protected
override
bool
TreatAsReturn
(
Document
document
,
int
position
,
CancellationToken
cancellationToken
)
{
var
root
=
document
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
var
root
=
document
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
var
endToken
=
root
.
FindToken
(
position
);
if
(
endToken
.
IsMissing
)
...
...
@@ -77,7 +77,7 @@ protected override bool TreatAsReturn(Document document, int position, Cancellat
protected
override
void
FormatAndApply
(
Document
document
,
int
position
,
CancellationToken
cancellationToken
)
{
var
root
=
document
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
var
root
=
document
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
var
endToken
=
root
.
FindToken
(
position
);
if
(
endToken
.
IsMissing
)
...
...
src/EditorFeatures/Core/Implementation/AutomaticCompletion/AbstractAutomaticLineEnderCommandHandler.cs
浏览文件 @
013a882e
...
...
@@ -139,7 +139,7 @@ public void ExecuteCommand(AutomaticLineEnderCommandArgs args, Action nextHandle
/// </summary>
private
int
?
GetInsertionPoint
(
Document
document
,
ITextSnapshotLine
line
,
CancellationToken
cancellationToken
)
{
var
root
=
document
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
var
root
=
document
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
var
text
=
document
.
GetTextAsync
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
var
syntaxFacts
=
document
.
GetLanguageService
<
ISyntaxFactsService
>();
...
...
src/EditorFeatures/Core/Implementation/CodeActions/CodeActionEditHandlerService.cs
浏览文件 @
013a882e
...
...
@@ -265,7 +265,7 @@ private void TryStartRenameSession(Workspace workspace, Solution oldSolution, So
continue
;
}
var
root
=
document
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
var
root
=
document
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
var
renameTokenOpt
=
root
.
GetAnnotatedNodesAndTokens
(
RenameAnnotation
.
Kind
)
.
Where
(
s
=>
s
.
IsToken
)
...
...
@@ -282,7 +282,7 @@ private void TryStartRenameSession(Workspace workspace, Solution oldSolution, So
var
pathToRenameToken
=
new
SyntaxPath
(
renameTokenOpt
.
Value
);
var
latestDocument
=
workspace
.
CurrentSolution
.
GetDocument
(
documentId
);
var
latestRoot
=
latestDocument
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
var
latestRoot
=
latestDocument
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
SyntaxNodeOrToken
resolvedRenameToken
;
if
(
pathToRenameToken
.
TryResolve
(
latestRoot
,
out
resolvedRenameToken
)
&&
...
...
@@ -293,7 +293,7 @@ private void TryStartRenameSession(Workspace workspace, Solution oldSolution, So
if
(
navigationService
.
TryNavigateToSpan
(
editorWorkspace
,
documentId
,
resolvedRenameToken
.
Span
))
{
var
openDocument
=
workspace
.
CurrentSolution
.
GetDocument
(
documentId
);
var
openRoot
=
openDocument
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
var
openRoot
=
openDocument
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
// NOTE: We need to resolve the syntax path again in case VB line commit kicked in
// due to the navigation.
...
...
src/EditorFeatures/Core/Implementation/CommentSelection/AbstractCommentUncommentService.cs
浏览文件 @
013a882e
...
...
@@ -3,11 +3,9 @@
using
System.Collections.Generic
;
using
System.Linq
;
using
System.Threading
;
using
Microsoft.CodeAnalysis.Editor.Shared.Extensions
;
using
Microsoft.CodeAnalysis.Editor.Shared.Utilities
;
using
Microsoft.CodeAnalysis.Formatting
;
using
Microsoft.CodeAnalysis.Text
;
using
Microsoft.CodeAnalysis.Text.Shared.Extensions
;
using
Roslyn.Utilities
;
namespace
Microsoft.CodeAnalysis.Editor.Implementation.CommentSelection
...
...
@@ -21,10 +19,10 @@ internal abstract class AbstractCommentUncommentService : ICommentUncommentServi
public
Document
Format
(
Document
document
,
IEnumerable
<
TextSpan
>
changes
,
CancellationToken
cancellationToken
)
{
var
root
=
document
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
var
root
=
document
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
var
formattingSpans
=
changes
.
Select
(
s
=>
CommonFormattingHelpers
.
GetFormattingSpan
(
root
,
s
));
return
Formatter
.
FormatAsync
(
document
,
formattingSpans
,
cancellationToken
:
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
}
}
}
}
\ No newline at end of file
src/EditorFeatures/Core/Implementation/Formatting/Indentation/AbstractSmartTokenFormatterCommandHandler.cs
浏览文件 @
013a882e
...
...
@@ -44,7 +44,7 @@ internal abstract class AbstractSmartTokenFormatterCommandHandler :
/// <returns>True if any change is made.</returns>
protected
bool
FormatToken
(
ITextView
view
,
Document
document
,
SyntaxToken
token
,
IEnumerable
<
IFormattingRule
>
formattingRules
,
CancellationToken
cancellationToken
)
{
var
root
=
document
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
var
root
=
document
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
var
formatter
=
CreateSmartTokenFormatter
(
document
.
Options
,
formattingRules
,
root
);
var
changes
=
formatter
.
FormatTokenAsync
(
document
.
Project
.
Solution
.
Workspace
,
token
,
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
if
(
changes
.
Count
==
0
)
...
...
@@ -295,7 +295,7 @@ private bool TryFormatUsingTokenFormatter(ITextView view, ITextBuffer subjectBuf
{
var
position
=
view
.
GetCaretPoint
(
subjectBuffer
).
Value
;
var
line
=
position
.
GetContainingLine
().
AsTextLine
();
var
root
=
document
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
var
root
=
document
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
var
options
=
document
.
Options
;
if
(!
UseSmartTokenFormatter
(
root
,
line
,
formattingRules
,
options
,
cancellationToken
))
{
...
...
@@ -341,4 +341,4 @@ protected CaretPreservingEditTransaction CreateEditTransaction(ITextView view, s
return
new
CaretPreservingEditTransaction
(
description
,
view
,
_undoHistoryRegistry
,
_editorOperationsFactoryService
);
}
}
}
}
\ No newline at end of file
src/EditorFeatures/Core/Implementation/GoToDefinition/AbstractGoToDefinitionService.cs
浏览文件 @
013a882e
...
...
@@ -82,7 +82,7 @@ public bool TryGoToDefinition(Document document, int position, CancellationToken
private
static
bool
IsThirdPartyNavigationAllowed
(
ISymbol
symbolToNavigateTo
,
int
caretPosition
,
Document
document
,
CancellationToken
cancellationToken
)
{
var
syntaxRoot
=
document
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
var
syntaxRoot
=
document
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
var
syntaxFactsService
=
document
.
GetLanguageService
<
ISyntaxFactsService
>();
var
containingTypeDeclaration
=
syntaxFactsService
.
GetContainingTypeDeclaration
(
syntaxRoot
,
caretPosition
);
...
...
src/EditorFeatures/Core/Implementation/InlineRename/InlineRenameSession.cs
浏览文件 @
013a882e
...
...
@@ -643,7 +643,7 @@ private void ApplyRename(Solution newSolution, IWaitContext waitContext)
var
newDocument
=
newSolution
.
GetDocument
(
id
);
if
(
newDocument
.
SupportsSyntaxTree
)
{
var
root
=
newDocument
.
GetSyntaxRoot
Async
(
waitContext
.
CancellationToken
).
WaitAndGetResult
(
waitContext
.
CancellationToken
);
var
root
=
newDocument
.
GetSyntaxRoot
Synchronously
(
waitContext
.
CancellationToken
);
finalSolution
=
finalSolution
.
WithDocumentSyntaxRoot
(
id
,
root
);
}
else
...
...
src/EditorFeatures/Core/Implementation/Preview/PreviewFactoryService.cs
浏览文件 @
013a882e
...
...
@@ -385,7 +385,7 @@ public Task<object> CreateChangedDocumentPreviewViewAsync(Document oldDocument,
if
(
newDocument
.
SupportsSyntaxTree
)
{
var
newRoot
=
newDocument
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
var
newRoot
=
newDocument
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
var
conflictNodes
=
newRoot
.
GetAnnotatedNodesAndTokens
(
ConflictAnnotation
.
Kind
);
var
conflictSpans
=
conflictNodes
.
Select
(
n
=>
n
.
Span
.
ToSpan
()).
ToList
();
var
conflictDescriptions
=
conflictNodes
.
SelectMany
(
n
=>
n
.
GetAnnotations
(
ConflictAnnotation
.
Kind
))
...
...
src/EditorFeatures/Core/Implementation/RenameTracking/RenameTrackingTaggerProvider.RenameTrackingCommitter.cs
浏览文件 @
013a882e
...
...
@@ -159,7 +159,7 @@ private bool ApplyChangesToWorkspace(CancellationToken cancellationToken)
{
// because changes have already been made to the workspace (UpdateWorkspaceForResetOfTypedIdentifier() above),
// these calls can't be cancelled and must be allowed to complete.
var
root
=
renameTrackingSolutionSet
.
RenamedSolution
.
GetDocument
(
docId
).
GetSyntaxRoot
Async
(
CancellationToken
.
None
).
WaitAndGetResult
(
CancellationToken
.
None
);
var
root
=
renameTrackingSolutionSet
.
RenamedSolution
.
GetDocument
(
docId
).
GetSyntaxRoot
Synchronously
(
CancellationToken
.
None
);
finalSolution
=
finalSolution
.
WithDocumentSyntaxRoot
(
docId
,
root
);
}
...
...
src/EditorFeatures/Core/Shared/Extensions/ITextSnapshotExtensions.cs
浏览文件 @
013a882e
...
...
@@ -35,7 +35,7 @@ public static void FormatAndApplyToBuffer(this ITextSnapshot snapshot, TextSpan
rules
=
GetFormattingRules
(
document
,
rules
,
span
);
var
root
=
document
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
var
root
=
document
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
var
changes
=
Formatter
.
GetFormattedTextChanges
(
root
,
SpecializedCollections
.
SingletonEnumerable
(
span
),
document
.
Project
.
Solution
.
Workspace
,
document
.
Options
,
rules
,
cancellationToken
);
using
(
Logger
.
LogBlock
(
FunctionId
.
Formatting_ApplyResultToBuffer
,
cancellationToken
))
...
...
src/EditorFeatures/VisualBasic/AutomaticCompletion/AutomaticLineEnderCommandHandler.vb
浏览文件 @
013a882e
...
...
@@ -43,7 +43,7 @@ Namespace Microsoft.CodeAnalysis.Editor.VisualBasic.AutomaticCompletion
Protected
Overrides
Function
GetEndingString
(
document
As
Document
,
position
As
Integer
,
cancellationToken
As
CancellationToken
)
As
String
' prepare expansive information from document
Dim
root
=
DirectCast
(
document
.
GetSyntaxRootAsync
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
),
SyntaxNode
)
Dim
root
=
document
.
GetSyntaxRootSynchronously
(
cancellationToken
)
Dim
text
=
document
.
GetTextAsync
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
)
' get line where the caret is on
...
...
src/EditorFeatures/VisualBasic/AutomaticEndConstructCorrection/AutomaticEndConstructCorrector.vb
浏览文件 @
013a882e
...
...
@@ -139,7 +139,7 @@ Namespace Microsoft.CodeAnalysis.Editor.VisualBasic.AutomaticEndConstructCorrect
Return
False
End
If
Dim
root
=
_previousDocument
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
)
Dim
root
=
_previousDocument
.
GetSyntaxRoot
Synchronously
(
cancellationToken
)
token
=
root
.
FindToken
(
textChange
.
OldPosition
)
If
Not
IsChangeOnCorrectToken
(
token
)
Then
...
...
src/EditorFeatures/VisualBasic/EndConstructGeneration/EndConstructCommandHandler.vb
浏览文件 @
013a882e
...
...
@@ -109,7 +109,7 @@ Namespace Microsoft.CodeAnalysis.Editor.VisualBasic.EndConstructGeneration
Return
End
If
Dim
root
=
document
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
)
Dim
root
=
document
.
GetSyntaxRoot
Synchronously
(
cancellationToken
)
Dim
statement
=
root
.
FindToken
(
position
.
Value
).
GetAncestor
(
Of
StatementSyntax
)()
If
statement
Is
Nothing
OrElse
TypeOf
statement
Is
EmptyStatementSyntax
OrElse
Not
statement
.
ContainsDiagnostics
Then
...
...
src/EditorFeatures/VisualBasic/LineCommit/CommitFormatter.vb
浏览文件 @
013a882e
...
...
@@ -71,7 +71,7 @@ Namespace Microsoft.CodeAnalysis.Editor.VisualBasic.LineCommit
codeCleanups
,
cancellationToken
).
WaitAndGetResult
(
cancellationToken
)
Else
Dim
root
=
document
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
)
Dim
root
=
document
.
GetSyntaxRoot
Synchronously
(
cancellationToken
)
Dim
newRoot
=
Await
CodeCleaner
.
CleanupAsync
(
root
,
textSpanToFormat
,
document
.
Project
.
Solution
.
Workspace
,
codeCleanups
,
cancellationToken
).
ConfigureAwait
(
False
)
If
root
Is
newRoot
Then
finalDocument
=
document
...
...
src/EditorFeatures/VisualBasic/NavigationBar/VisualBasicNavigationBarItemService.vb
浏览文件 @
013a882e
...
...
@@ -520,7 +520,7 @@ Namespace Microsoft.CodeAnalysis.Editor.VisualBasic.NavigationBar
' We'll compute everything up front before we go mutate state
Dim
text
=
document
.
GetTextAsync
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
)
Dim
newDocument
=
generateCodeItem
.
GetGeneratedDocumentAsync
(
document
,
cancellationToken
).
WaitAndGetResult
(
cancellationToken
)
Dim
generatedTree
=
newDocument
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
)
Dim
generatedTree
=
newDocument
.
GetSyntaxRoot
Synchronously
(
cancellationToken
)
Dim
generatedNode
=
generatedTree
.
GetAnnotatedNodes
(
AbstractGenerateCodeItem
.
GeneratedSymbolAnnotation
).
Single
().
FirstAncestorOrSelf
(
Of
MethodBlockBaseSyntax
)
Dim
indentSize
=
newDocument
.
Options
.
GetOption
(
FormattingOptions
.
IndentationSize
)
Dim
navigationPoint
=
NavigationPointHelpers
.
GetNavigationPoint
(
generatedTree
.
GetText
(
text
.
Encoding
),
indentSize
,
generatedNode
)
...
...
src/Features/CSharp/Portable/ExtractInterface/CSharpExtractInterfaceService.cs
浏览文件 @
013a882e
...
...
@@ -52,7 +52,7 @@ internal override async Task<SyntaxNode> GetTypeDeclarationAsync(Document docume
CancellationToken
cancellationToken
)
{
var
documentWithTypeNode
=
solutionWithFormattedInterfaceDocument
.
GetDocument
(
documentIdWithTypeNode
);
var
root
=
documentWithTypeNode
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
var
root
=
documentWithTypeNode
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
var
typeDeclaration
=
root
.
GetAnnotatedNodes
<
TypeDeclarationSyntax
>(
typeNodeAnnotation
).
Single
();
var
docId
=
solutionWithFormattedInterfaceDocument
.
GetDocument
(
typeDeclaration
.
SyntaxTree
).
Id
;
...
...
src/Features/Core/Portable/ChangeSignature/AbstractChangeSignatureService.cs
浏览文件 @
013a882e
...
...
@@ -323,7 +323,7 @@ private bool TryCreateUpdatedSolution(ChangeSignatureAnalyzedContext context, Ch
{
var
doc
=
updatedSolution
.
GetDocument
(
docId
);
var
updater
=
doc
.
Project
.
LanguageServices
.
GetService
<
AbstractChangeSignatureService
>();
var
root
=
doc
.
GetSyntaxRoot
Async
(
CancellationToken
.
None
).
WaitAndGetResult
(
CancellationToken
.
None
);
var
root
=
doc
.
GetSyntaxRoot
Synchronously
(
CancellationToken
.
None
);
var
nodes
=
nodesToUpdate
[
docId
];
...
...
src/Features/Core/Portable/ExtractInterface/AbstractExtractInterfaceService.cs
浏览文件 @
013a882e
...
...
@@ -276,7 +276,8 @@ public ExtractInterfaceResult ExtractInterfaceFromAnalyzedType(ExtractInterfaceT
private
static
Solution
GetSolutionWithFormattedInterfaceDocument
(
Document
unformattedInterfaceDocument
,
CancellationToken
cancellationToken
)
{
Solution
solutionWithInterfaceDocument
;
var
formattedRoot
=
Formatter
.
Format
(
unformattedInterfaceDocument
.
GetSyntaxRootAsync
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
),
unformattedInterfaceDocument
.
Project
.
Solution
.
Workspace
,
cancellationToken
:
cancellationToken
);
var
formattedRoot
=
Formatter
.
Format
(
unformattedInterfaceDocument
.
GetSyntaxRootSynchronously
(
cancellationToken
),
unformattedInterfaceDocument
.
Project
.
Solution
.
Workspace
,
cancellationToken
:
cancellationToken
);
var
rootToSimplify
=
formattedRoot
.
WithAdditionalAnnotations
(
Simplifier
.
Annotation
);
var
finalInterfaceDocument
=
Simplifier
.
ReduceAsync
(
unformattedInterfaceDocument
.
WithSyntaxRoot
(
rootToSimplify
),
cancellationToken
:
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
...
...
src/Features/VisualBasic/Portable/ExtractInterface/VisualBasicExtractInterfaceService.vb
浏览文件 @
013a882e
...
...
@@ -97,7 +97,7 @@ Namespace Microsoft.CodeAnalysis.VisualBasic.ExtractInterface
cancellationToken
As
CancellationToken
)
As
String
Dim
documentWithTypeNode
=
solutionWithInterfaceDocument
.
GetDocument
(
invocationLocationDocument
)
Dim
typeDeclaration
=
documentWithTypeNode
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
).
GetAnnotatedNodes
(
Of
TypeBlockSyntax
)(
typeNodeAnnotation
).
Single
()
Dim
typeDeclaration
=
documentWithTypeNode
.
GetSyntaxRoot
Synchronously
(
cancellationToken
).
GetAnnotatedNodes
(
Of
TypeBlockSyntax
)(
typeNodeAnnotation
).
Single
()
Dim
implementedInterfaceStatementSyntax
=
If
(
extractedInterfaceSymbol
.
TypeParameters
.
Any
(),
SyntaxFactory
.
GenericName
(
...
...
@@ -110,7 +110,9 @@ Namespace Microsoft.CodeAnalysis.VisualBasic.ExtractInterface
Dim
updatedTypeDeclaration
=
typeDeclaration
.
WithImplements
(
updatedImplementsList
)
Dim
docId
=
solutionWithInterfaceDocument
.
GetDocument
(
typeDeclaration
.
SyntaxTree
).
Id
Dim
updatedRoot
=
solutionWithInterfaceDocument
.
GetDocument
(
docId
).
GetSyntaxRootAsync
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
).
ReplaceNode
(
typeDeclaration
,
updatedTypeDeclaration
)
Dim
updatedRoot
=
solutionWithInterfaceDocument
.
GetDocument
(
docId
).
GetSyntaxRootSynchronously
(
cancellationToken
).
ReplaceNode
(
typeDeclaration
,
updatedTypeDeclaration
)
Dim
updatedCompilationUnit
=
CType
(
updatedRoot
,
CompilationUnitSyntax
)
docToRootMap
.
Add
(
docId
,
updatedCompilationUnit
)
...
...
@@ -138,7 +140,7 @@ Namespace Microsoft.CodeAnalysis.VisualBasic.ExtractInterface
If
docToRootMap
.
ContainsKey
(
candidateDocId
)
Then
currentRoot
=
docToRootMap
(
candidateDocId
)
Else
currentRoot
=
CType
(
solutionWithInterfaceDocument
.
GetDocument
(
candidateDocId
).
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
),
CompilationUnitSyntax
)
currentRoot
=
CType
(
solutionWithInterfaceDocument
.
GetDocument
(
candidateDocId
).
GetSyntaxRoot
Synchronously
(
cancellationToken
),
CompilationUnitSyntax
)
End
If
token
=
currentRoot
.
DescendantNodesAndTokensAndSelf
().
FirstOrDefault
(
Function
(
x
)
x
.
HasAnnotation
(
annotation
))
...
...
src/VisualStudio/CSharp/Impl/Snippets/SnippetExpansionClient.cs
浏览文件 @
013a882e
...
...
@@ -103,7 +103,7 @@ internal override Document AddImports(Document document, XElement snippetNode, b
return
document
;
}
var
root
=
document
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
var
root
=
document
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
var
newRoot
=
((
CompilationUnitSyntax
)
root
).
AddUsingDirectives
(
newUsingDirectives
,
placeSystemNamespaceFirst
);
var
newDocument
=
document
.
WithSyntaxRoot
(
newRoot
);
...
...
@@ -117,7 +117,7 @@ internal override Document AddImports(Document document, XElement snippetNode, b
private
static
IList
<
UsingDirectiveSyntax
>
GetUsingDirectivesToAdd
(
Document
document
,
XElement
snippetNode
,
XElement
importsNode
,
CancellationToken
cancellationToken
)
{
var
namespaceXmlName
=
XName
.
Get
(
"Namespace"
,
snippetNode
.
Name
.
NamespaceName
);
var
root
=
document
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
var
root
=
document
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
var
existingUsings
=
((
CompilationUnitSyntax
)
root
).
Usings
;
var
newUsings
=
new
List
<
UsingDirectiveSyntax
>();
...
...
src/VisualStudio/CSharp/Impl/Snippets/SnippetFunctions/SnippetFunctionGenerateSwitchCases.cs
浏览文件 @
013a882e
...
...
@@ -4,7 +4,6 @@
using
System.Linq
;
using
System.Threading
;
using
Microsoft.CodeAnalysis
;
using
Microsoft.CodeAnalysis.CSharp.Extensions
;
using
Microsoft.CodeAnalysis.Editor.Shared.Extensions
;
using
Microsoft.CodeAnalysis.Shared.Extensions
;
using
Microsoft.CodeAnalysis.Simplification
;
...
...
@@ -95,7 +94,7 @@ protected override bool TryGetSimplifiedTypeNameInCaseContext(Document document,
var
textWithCaseAdded
=
document
.
GetTextAsync
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
).
WithChanges
(
textChange
);
var
documentWithCaseAdded
=
document
.
WithText
(
textWithCaseAdded
);
var
syntaxRoot
=
documentWithCaseAdded
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
var
syntaxRoot
=
documentWithCaseAdded
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
var
nodeToReplace
=
syntaxRoot
.
DescendantNodes
().
FirstOrDefault
(
n
=>
n
.
Span
==
typeSpanToAnnotate
);
if
(
nodeToReplace
==
null
)
...
...
@@ -107,8 +106,8 @@ protected override bool TryGetSimplifiedTypeNameInCaseContext(Document document,
var
documentWithAnnotations
=
documentWithCaseAdded
.
WithSyntaxRoot
(
updatedRoot
);
var
simplifiedDocument
=
Simplifier
.
ReduceAsync
(
documentWithAnnotations
,
cancellationToken
:
cancellationToken
).
Result
;
simplifiedTypeName
=
simplifiedDocument
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
).
GetAnnotatedNodesAndTokens
(
typeAnnotation
).
Single
().
ToString
();
simplifiedTypeName
=
simplifiedDocument
.
GetSyntaxRoot
Synchronously
(
cancellationToken
).
GetAnnotatedNodesAndTokens
(
typeAnnotation
).
Single
().
ToString
();
return
true
;
}
}
}
}
\ No newline at end of file
src/VisualStudio/CSharp/Impl/Snippets/SnippetFunctions/SnippetFunctionSimpleTypeName.cs
浏览文件 @
013a882e
...
...
@@ -3,7 +3,6 @@
using
System.Linq
;
using
System.Threading
;
using
Microsoft.CodeAnalysis
;
using
Microsoft.CodeAnalysis.CSharp.Extensions
;
using
Microsoft.CodeAnalysis.Simplification
;
using
Microsoft.CodeAnalysis.Text
;
using
Microsoft.VisualStudio.LanguageServices.Implementation.Snippets.SnippetFunctions
;
...
...
@@ -25,7 +24,7 @@ protected override bool TryGetSimplifiedTypeName(Document documentWithFullyQuali
simplifiedTypeName
=
string
.
Empty
;
var
typeAnnotation
=
new
SyntaxAnnotation
();
var
syntaxRoot
=
documentWithFullyQualifiedTypeName
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
var
syntaxRoot
=
documentWithFullyQualifiedTypeName
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
var
nodeToReplace
=
syntaxRoot
.
DescendantNodes
().
FirstOrDefault
(
n
=>
n
.
Span
==
updatedTextSpan
);
if
(
nodeToReplace
==
null
)
...
...
@@ -37,8 +36,8 @@ protected override bool TryGetSimplifiedTypeName(Document documentWithFullyQuali
var
documentWithAnnotations
=
documentWithFullyQualifiedTypeName
.
WithSyntaxRoot
(
updatedRoot
);
var
simplifiedDocument
=
Simplifier
.
ReduceAsync
(
documentWithAnnotations
,
cancellationToken
:
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
simplifiedTypeName
=
simplifiedDocument
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
).
GetAnnotatedNodesAndTokens
(
typeAnnotation
).
Single
().
ToString
();
simplifiedTypeName
=
simplifiedDocument
.
GetSyntaxRoot
Synchronously
(
cancellationToken
).
GetAnnotatedNodesAndTokens
(
typeAnnotation
).
Single
().
ToString
();
return
true
;
}
}
}
}
\ No newline at end of file
src/VisualStudio/Core/Def/Implementation/AbstractEditorFactory.cs
浏览文件 @
013a882e
...
...
@@ -288,7 +288,7 @@ private void FormatDocumentCreatedFromTemplate(IVsHierarchy hierarchy, uint item
var
forkedSolution
=
solution
.
AddDocument
(
DocumentInfo
.
Create
(
documentId
,
filePath
,
loader
:
new
FileTextLoader
(
filePath
,
defaultEncoding
:
null
),
filePath
:
filePath
));
var
addedDocument
=
forkedSolution
.
GetDocument
(
documentId
);
var
rootToFormat
=
addedDocument
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
var
rootToFormat
=
addedDocument
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
var
formattedTextChanges
=
Formatter
.
GetFormattedTextChanges
(
rootToFormat
,
workspace
,
addedDocument
.
Options
,
cancellationToken
);
var
formattedText
=
addedDocument
.
GetTextAsync
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
).
WithChanges
(
formattedTextChanges
);
...
...
src/VisualStudio/Core/Def/Implementation/LanguageService/AbstractLanguageService`2.IVsLanguageTextOps.cs
浏览文件 @
013a882e
...
...
@@ -48,7 +48,7 @@ private int FormatWorker(IVsTextLayer textLayer, TextSpan[] selections, Cancella
}
var
text
=
document
.
GetTextAsync
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
var
root
=
document
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
);
var
root
=
document
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
var
ts
=
selections
.
Single
();
int
start
=
text
.
Lines
[
ts
.
iStartLine
].
Start
+
ts
.
iStartIndex
;
...
...
src/VisualStudio/Core/Def/Implementation/Venus/ContainedDocument.cs
浏览文件 @
013a882e
...
...
@@ -808,7 +808,7 @@ private void AdjustIndentation(IProjectionBuffer subjectBuffer, IEnumerable<int>
var
originalText
=
document
.
GetTextAsync
(
CancellationToken
.
None
).
WaitAndGetResult
(
CancellationToken
.
None
);
Contract
.
Requires
(
object
.
ReferenceEquals
(
originalText
,
snapshot
.
AsText
()));
var
root
=
document
.
GetSyntaxRoot
Async
(
CancellationToken
.
None
).
WaitAndGetResult
(
CancellationToken
.
None
);
var
root
=
document
.
GetSyntaxRoot
Synchronously
(
CancellationToken
.
None
);
var
editorOptionsFactory
=
_componentModel
.
GetService
<
IEditorOptionsFactoryService
>();
var
editorOptions
=
editorOptionsFactory
.
GetOptions
(
_containedLanguage
.
DataBuffer
);
...
...
@@ -840,7 +840,7 @@ private void AdjustIndentation(IProjectionBuffer subjectBuffer, IEnumerable<int>
private
void
AdjustIndentationForSpan
(
Document
document
,
ITextEdit
edit
,
TextSpan
visibleSpan
,
IFormattingRule
baseIndentationRule
,
OptionSet
options
)
{
var
root
=
document
.
GetSyntaxRoot
Async
(
CancellationToken
.
None
).
WaitAndGetResult
(
CancellationToken
.
None
);
var
root
=
document
.
GetSyntaxRoot
Synchronously
(
CancellationToken
.
None
);
using
(
var
rulePool
=
SharedPools
.
Default
<
List
<
IFormattingRule
>>().
GetPooledObject
())
using
(
var
spanPool
=
SharedPools
.
Default
<
List
<
TextSpan
>>().
GetPooledObject
())
...
...
src/VisualStudio/Core/Def/Implementation/Venus/ContainedLanguageCodeSupport.cs
浏览文件 @
013a882e
...
...
@@ -213,7 +213,8 @@ public static string GetEventHandlerMemberId(Document document, string className
var
newType
=
codeGenerationService
.
AddMethod
(
destinationType
,
newMethod
,
new
CodeGenerationOptions
(
autoInsertionLocation
:
false
),
cancellationToken
);
var
newRoot
=
targetSyntaxTree
.
GetRoot
(
cancellationToken
).
ReplaceNode
(
destinationType
,
newType
);
newRoot
=
Simplifier
.
ReduceAsync
(
targetDocument
.
WithSyntaxRoot
(
newRoot
),
Simplifier
.
Annotation
,
null
,
cancellationToken
).
WaitAndGetResult_Venus
(
cancellationToken
).
GetSyntaxRootAsync
(
cancellationToken
).
WaitAndGetResult_Venus
(
cancellationToken
);
newRoot
=
Simplifier
.
ReduceAsync
(
targetDocument
.
WithSyntaxRoot
(
newRoot
),
Simplifier
.
Annotation
,
null
,
cancellationToken
).
WaitAndGetResult_Venus
(
cancellationToken
).
GetSyntaxRootSynchronously
(
cancellationToken
);
var
formattingRules
=
additionalFormattingRule
.
Concat
(
Formatter
.
GetDefaultFormattingRules
(
targetDocument
));
...
...
src/VisualStudio/Core/Def/Implementation/Workspace/VisualStudioFormattingRuleFactoryServiceFactory.cs
浏览文件 @
013a882e
...
...
@@ -80,7 +80,7 @@ public IFormattingRule CreateRule(Document document, int position)
{
var
spans
=
pooledObject
.
Object
;
var
root
=
document
.
GetSyntaxRoot
Async
(
CancellationToken
.
None
).
WaitAndGetResult
(
CancellationToken
.
None
);
var
root
=
document
.
GetSyntaxRoot
Synchronously
(
CancellationToken
.
None
);
var
text
=
document
.
GetTextAsync
(
CancellationToken
.
None
).
WaitAndGetResult
(
CancellationToken
.
None
);
spans
.
AddRange
(
containedDocument
.
GetEditorVisibleSpans
());
...
...
src/VisualStudio/Core/Impl/CodeModel/AbstractCodeModelService.cs
浏览文件 @
013a882e
...
...
@@ -1152,7 +1152,7 @@ private int GetParameterInsertionIndex(SyntaxNode container, int insertionIndex)
private
Document
FormatAnnotatedNode
(
Document
document
,
SyntaxAnnotation
annotation
,
IEnumerable
<
IFormattingRule
>
additionalRules
,
CancellationToken
cancellationToken
)
{
var
root
=
document
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult_CodeModel
(
cancellationToken
);
var
root
=
document
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
var
annotatedNode
=
root
.
GetAnnotatedNodesAndTokens
(
annotation
).
Single
().
AsNode
();
var
formattingSpan
=
GetSpanToFormat
(
root
,
annotatedNode
.
FullSpan
);
...
...
@@ -1180,7 +1180,7 @@ private Document FormatAnnotatedNode(Document document, SyntaxAnnotation annotat
CancellationToken
cancellationToken
,
out
Document
newDocument
)
{
var
root
=
document
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult_CodeModel
(
cancellationToken
);
var
root
=
document
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
// Annotate the member we're inserting so we can get back to it.
var
annotation
=
new
SyntaxAnnotation
();
...
...
@@ -1210,7 +1210,7 @@ private Document FormatAnnotatedNode(Document document, SyntaxAnnotation annotat
// new node
return
document
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult_CodeModel
(
cancellationToken
)
.
GetSyntaxRoot
Synchronously
(
cancellationToken
)
.
GetAnnotatedNodesAndTokens
(
annotation
)
.
Single
()
.
AsNode
();
...
...
@@ -1234,7 +1234,7 @@ private Document FormatAnnotatedNode(Document document, SyntaxAnnotation annotat
// REVIEW: how simplifier ever worked for code model? nobody added simplifier.Annotation before?
var
annotatedNode
=
newNode
.
WithAdditionalAnnotations
(
annotation
,
Simplifier
.
Annotation
);
var
oldRoot
=
document
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult_CodeModel
(
cancellationToken
);
var
oldRoot
=
document
.
GetSyntaxRoot
Synchronously
(
cancellationToken
);
var
newRoot
=
oldRoot
.
ReplaceNode
(
node
,
annotatedNode
);
document
=
document
.
WithSyntaxRoot
(
newRoot
);
...
...
src/VisualStudio/VisualBasic/Impl/Snippets/SnippetExpansionClient.vb
浏览文件 @
013a882e
...
...
@@ -107,7 +107,7 @@ Namespace Microsoft.VisualStudio.LanguageServices.VisualBasic.Snippets
Return
document
End
If
Dim
root
=
document
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
)
Dim
root
=
document
.
GetSyntaxRoot
Synchronously
(
cancellationToken
)
Dim
newRoot
=
CType
(
root
,
CompilationUnitSyntax
).
AddImportsStatements
(
newImportsStatements
,
placeSystemNamespaceFirst
)
Dim
newDocument
=
document
.
WithSyntaxRoot
(
newRoot
)
...
...
@@ -119,7 +119,7 @@ Namespace Microsoft.VisualStudio.LanguageServices.VisualBasic.Snippets
End
Function
Private
Shared
Function
GetImportsStatementsToAdd
(
document
As
Document
,
snippetNode
As
XElement
,
importsNode
As
XElement
,
cancellationToken
As
CancellationToken
)
As
IList
(
Of
ImportsStatementSyntax
)
Dim
root
=
document
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
)
Dim
root
=
document
.
GetSyntaxRoot
Synchronously
(
cancellationToken
)
Dim
localImportsClauses
=
CType
(
root
,
CompilationUnitSyntax
).
Imports
.
SelectMany
(
Function
(
x
)
x
.
ImportsClauses
)
Dim
compilation
=
document
.
Project
.
GetCompilationAsync
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
)
Dim
options
=
CType
(
compilation
.
Options
,
VisualBasicCompilationOptions
)
...
...
src/VisualStudio/VisualBasic/Impl/Snippets/SnippetFunctions/SnippetFunctionGenerateSwitchCases.vb
浏览文件 @
013a882e
...
...
@@ -77,7 +77,7 @@ Namespace Microsoft.VisualStudio.LanguageServices.VisualBasic.Snippets.SnippetFu
Dim
textWithCaseAdded
=
document
.
GetTextAsync
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
).
WithChanges
(
textChange
)
Dim
documentWithCaseAdded
=
document
.
WithText
(
textWithCaseAdded
)
Dim
syntaxRoot
=
documentWithCaseAdded
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
)
Dim
syntaxRoot
=
documentWithCaseAdded
.
GetSyntaxRoot
Synchronously
(
cancellationToken
)
Dim
nodeToReplace
=
syntaxRoot
.
DescendantNodes
().
FirstOrDefault
(
Function
(
n
)
n
.
Span
=
typeSpanToAnnotate
)
If
nodeToReplace
Is
Nothing
Then
...
...
@@ -88,9 +88,8 @@ Namespace Microsoft.VisualStudio.LanguageServices.VisualBasic.Snippets.SnippetFu
Dim
documentWithAnnotations
=
documentWithCaseAdded
.
WithSyntaxRoot
(
updatedRoot
)
Dim
simplifiedDocument
=
Simplifier
.
ReduceAsync
(
documentWithAnnotations
,
cancellationToken
:
=
cancellationToken
).
WaitAndGetResult
(
cancellationToken
)
simplifiedTypeName
=
simplifiedDocument
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
).
GetAnnotatedNodesAndTokens
(
typeAnnotation
).
Single
().
ToString
()
simplifiedTypeName
=
simplifiedDocument
.
GetSyntaxRoot
Synchronously
(
cancellationToken
).
GetAnnotatedNodesAndTokens
(
typeAnnotation
).
Single
().
ToString
()
Return
True
End
Function
End
Class
End
Namespace
End
Namespace
\ No newline at end of file
src/VisualStudio/VisualBasic/Impl/Snippets/SnippetFunctions/SnippetFunctionSimpleTypeName.vb
浏览文件 @
013a882e
...
...
@@ -20,7 +20,7 @@ Namespace Microsoft.VisualStudio.LanguageServices.VisualBasic.Snippets.SnippetFu
simplifiedTypeName
=
String
.
Empty
Dim
typeAnnotation
=
New
SyntaxAnnotation
()
Dim
syntaxRoot
=
documentWithFullyQualifiedTypeName
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
)
Dim
syntaxRoot
=
documentWithFullyQualifiedTypeName
.
GetSyntaxRoot
Synchronously
(
cancellationToken
)
Dim
nodeToReplace
=
syntaxRoot
.
DescendantNodes
().
FirstOrDefault
(
Function
(
n
)
n
.
Span
=
updatedTextSpan
)
If
nodeToReplace
Is
Nothing
Then
...
...
@@ -31,7 +31,7 @@ Namespace Microsoft.VisualStudio.LanguageServices.VisualBasic.Snippets.SnippetFu
Dim
documentWithAnnotations
=
documentWithFullyQualifiedTypeName
.
WithSyntaxRoot
(
updatedRoot
)
Dim
simplifiedDocument
=
Simplifier
.
ReduceAsync
(
documentWithAnnotations
,
cancellationToken
:
=
cancellationToken
).
WaitAndGetResult
(
cancellationToken
)
simplifiedTypeName
=
simplifiedDocument
.
GetSyntaxRoot
Async
(
cancellationToken
).
WaitAndGetResult
(
cancellationToken
).
GetAnnotatedNodesAndTokens
(
typeAnnotation
).
Single
().
ToString
()
simplifiedTypeName
=
simplifiedDocument
.
GetSyntaxRoot
Synchronously
(
cancellationToken
).
GetAnnotatedNodesAndTokens
(
typeAnnotation
).
Single
().
ToString
()
Return
True
End
Function
End
Class
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录