Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
lwm1986
roslyn
提交
9bd67ccc
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,发现更多精彩内容 >>
提交
9bd67ccc
编写于
7月 03, 2017
作者:
M
Manish Vasani
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Address some more review feedback and fix one more break.
上级
181934d1
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
30 addition
and
13 deletion
+30
-13
src/Compilers/CSharp/Portable/Operations/CSharpOperationFactory_Methods.cs
...arp/Portable/Operations/CSharpOperationFactory_Methods.cs
+2
-1
src/Compilers/CSharp/Test/Semantic/FlowAnalysis/FlowTestBase.cs
...mpilers/CSharp/Test/Semantic/FlowAnalysis/FlowTestBase.cs
+4
-4
src/Compilers/Test/Utilities/CSharp/CSharpTestBase.cs
src/Compilers/Test/Utilities/CSharp/CSharpTestBase.cs
+24
-8
未找到文件。
src/Compilers/CSharp/Portable/Operations/CSharpOperationFactory_Methods.cs
浏览文件 @
9bd67ccc
// Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
using
System
;
using
System.Collections.Immutable
;
using
System.Diagnostics
;
using
System.Linq
;
...
...
@@ -113,7 +114,7 @@ private ImmutableArray<IOperation> GetAnonymousObjectCreationInitializers(BoundA
SyntaxNode
syntax
=
value
.
Syntax
?.
Parent
??
expression
.
Syntax
;
ITypeSymbol
type
=
target
.
Type
;
Optional
<
object
>
constantValue
=
value
.
ConstantValue
;
var
assignment
=
new
AssignmentExpression
(
target
,
value
,
isInvalid
,
syntax
,
type
,
constantValue
);
var
assignment
=
new
Simple
AssignmentExpression
(
target
,
value
,
isInvalid
,
syntax
,
type
,
constantValue
);
builder
.
Add
(
assignment
);
}
...
...
src/Compilers/CSharp/Test/Semantic/FlowAnalysis/FlowTestBase.cs
浏览文件 @
9bd67ccc
...
...
@@ -93,8 +93,8 @@ protected T CompileAndGetModelAndExpression<T>(string program, Func<SemanticMode
var
comp
=
CreateStandardCompilation
(
program
,
new
[]
{
LinqAssemblyRef
});
var
tree
=
comp
.
SyntaxTrees
[
0
];
var
model
=
comp
.
GetSemanticModel
(
tree
);
int
start
=
program
.
IndexOf
(
startString
,
StringComparison
.
Ordinal
)
+
s
tartString
.
Length
;
int
end
=
program
.
IndexOf
(
e
ndString
,
StringComparison
.
Ordinal
);
int
start
=
program
.
IndexOf
(
StartString
,
StringComparison
.
Ordinal
)
+
S
tartString
.
Length
;
int
end
=
program
.
IndexOf
(
E
ndString
,
StringComparison
.
Ordinal
);
ExpressionSyntax
syntaxToBind
=
null
;
foreach
(
var
expr
in
GetSyntaxNodeList
(
tree
).
OfType
<
ExpressionSyntax
>())
{
...
...
@@ -114,8 +114,8 @@ protected T CompileAndGetModelAndStatements<T>(string program, Func<SemanticMode
var
comp
=
CreateStandardCompilation
(
program
,
new
[]
{
LinqAssemblyRef
});
var
tree
=
comp
.
SyntaxTrees
[
0
];
var
model
=
comp
.
GetSemanticModel
(
tree
);
int
start
=
program
.
IndexOf
(
startString
,
StringComparison
.
Ordinal
)
+
s
tartString
.
Length
;
int
end
=
program
.
IndexOf
(
e
ndString
,
StringComparison
.
Ordinal
);
int
start
=
program
.
IndexOf
(
StartString
,
StringComparison
.
Ordinal
)
+
S
tartString
.
Length
;
int
end
=
program
.
IndexOf
(
E
ndString
,
StringComparison
.
Ordinal
);
StatementSyntax
firstStatement
=
null
,
lastStatement
=
null
;
foreach
(
var
stmt
in
GetSyntaxNodeList
(
tree
).
OfType
<
StatementSyntax
>())
{
...
...
src/Compilers/Test/Utilities/CSharp/CSharpTestBase.cs
浏览文件 @
9bd67ccc
...
...
@@ -731,8 +731,8 @@ protected static SyntaxNode GetSyntaxNodeForBinding(List<SyntaxNode> synList)
return
GetSyntaxNodeOfTypeForBinding
<
SyntaxNode
>(
synList
);
}
protected
const
string
s
tartString
=
"/*<bind>*/"
;
protected
const
string
e
ndString
=
"/*</bind>*/"
;
protected
const
string
S
tartString
=
"/*<bind>*/"
;
protected
const
string
E
ndString
=
"/*</bind>*/"
;
protected
static
TNode
GetSyntaxNodeOfTypeForBinding
<
TNode
>(
List
<
SyntaxNode
>
synList
)
where
TNode
:
SyntaxNode
{
...
...
@@ -741,26 +741,42 @@ protected static SyntaxNode GetSyntaxNodeForBinding(List<SyntaxNode> synList)
string
exprFullText
=
node
.
ToFullString
();
exprFullText
=
exprFullText
.
Trim
();
if
(
exprFullText
.
StartsWith
(
s
tartString
,
StringComparison
.
Ordinal
))
if
(
exprFullText
.
StartsWith
(
S
tartString
,
StringComparison
.
Ordinal
))
{
if
(
exprFullText
.
Contains
(
endString
))
if
(
exprFullText
.
EndsWith
(
endString
,
StringComparison
.
Ordinal
))
if
(
exprFullText
.
Contains
(
EndString
))
{
if
(
exprFullText
.
EndsWith
(
EndString
,
StringComparison
.
Ordinal
))
{
return
node
;
}
else
{
continue
;
}
}
else
{
return
node
;
}
}
if
(
exprFullText
.
EndsWith
(
e
ndString
,
StringComparison
.
Ordinal
))
if
(
exprFullText
.
EndsWith
(
E
ndString
,
StringComparison
.
Ordinal
))
{
if
(
exprFullText
.
Contains
(
startString
))
if
(
exprFullText
.
StartsWith
(
startString
,
StringComparison
.
Ordinal
))
if
(
exprFullText
.
Contains
(
StartString
))
{
if
(
exprFullText
.
StartsWith
(
StartString
,
StringComparison
.
Ordinal
))
{
return
node
;
}
else
{
continue
;
}
}
else
{
return
node
;
}
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录