Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
int
Rust
提交
6375b77e
R
Rust
项目概览
int
/
Rust
大约 1 年 前同步成功
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
Rust
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
6375b77e
编写于
7月 27, 2017
作者:
T
topecongiro
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add Span to ast::WhereClause
上级
4a42ff48
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
13 addition
and
2 deletion
+13
-2
src/libsyntax/ast.rs
src/libsyntax/ast.rs
+2
-0
src/libsyntax/fold.rs
src/libsyntax/fold.rs
+3
-2
src/libsyntax/parse/mod.rs
src/libsyntax/parse/mod.rs
+1
-0
src/libsyntax/parse/parser.rs
src/libsyntax/parse/parser.rs
+4
-0
src/libsyntax/print/pprust.rs
src/libsyntax/print/pprust.rs
+2
-0
src/libsyntax_ext/deriving/generic/ty.rs
src/libsyntax_ext/deriving/generic/ty.rs
+1
-0
未找到文件。
src/libsyntax/ast.rs
浏览文件 @
6375b77e
...
@@ -321,6 +321,7 @@ fn default() -> Generics {
...
@@ -321,6 +321,7 @@ fn default() -> Generics {
where_clause
:
WhereClause
{
where_clause
:
WhereClause
{
id
:
DUMMY_NODE_ID
,
id
:
DUMMY_NODE_ID
,
predicates
:
Vec
::
new
(),
predicates
:
Vec
::
new
(),
span
:
DUMMY_SP
,
},
},
span
:
DUMMY_SP
,
span
:
DUMMY_SP
,
}
}
...
@@ -332,6 +333,7 @@ fn default() -> Generics {
...
@@ -332,6 +333,7 @@ fn default() -> Generics {
pub
struct
WhereClause
{
pub
struct
WhereClause
{
pub
id
:
NodeId
,
pub
id
:
NodeId
,
pub
predicates
:
Vec
<
WherePredicate
>
,
pub
predicates
:
Vec
<
WherePredicate
>
,
pub
span
:
Span
,
}
}
/// A single predicate in a `where` clause
/// A single predicate in a `where` clause
...
...
src/libsyntax/fold.rs
浏览文件 @
6375b77e
...
@@ -736,14 +736,15 @@ pub fn noop_fold_generics<T: Folder>(Generics {ty_params, lifetimes, where_claus
...
@@ -736,14 +736,15 @@ pub fn noop_fold_generics<T: Folder>(Generics {ty_params, lifetimes, where_claus
}
}
pub
fn
noop_fold_where_clause
<
T
:
Folder
>
(
pub
fn
noop_fold_where_clause
<
T
:
Folder
>
(
WhereClause
{
id
,
predicates
}:
WhereClause
,
WhereClause
{
id
,
predicates
,
span
}:
WhereClause
,
fld
:
&
mut
T
)
fld
:
&
mut
T
)
->
WhereClause
{
->
WhereClause
{
WhereClause
{
WhereClause
{
id
:
fld
.new_id
(
id
),
id
:
fld
.new_id
(
id
),
predicates
:
predicates
.move_map
(|
predicate
|
{
predicates
:
predicates
.move_map
(|
predicate
|
{
fld
.fold_where_predicate
(
predicate
)
fld
.fold_where_predicate
(
predicate
)
})
}),
span
:
span
,
}
}
}
}
...
...
src/libsyntax/parse/mod.rs
浏览文件 @
6375b77e
...
@@ -885,6 +885,7 @@ fn parser_done(p: Parser){
...
@@ -885,6 +885,7 @@ fn parser_done(p: Parser){
where_clause
:
ast
::
WhereClause
{
where_clause
:
ast
::
WhereClause
{
id
:
ast
::
DUMMY_NODE_ID
,
id
:
ast
::
DUMMY_NODE_ID
,
predicates
:
Vec
::
new
(),
predicates
:
Vec
::
new
(),
span
:
syntax_pos
::
DUMMY_SP
,
},
},
span
:
syntax_pos
::
DUMMY_SP
,
span
:
syntax_pos
::
DUMMY_SP
,
},
},
...
...
src/libsyntax/parse/parser.rs
浏览文件 @
6375b77e
...
@@ -4373,6 +4373,7 @@ pub fn parse_generics(&mut self) -> PResult<'a, ast::Generics> {
...
@@ -4373,6 +4373,7 @@ pub fn parse_generics(&mut self) -> PResult<'a, ast::Generics> {
where_clause
:
WhereClause
{
where_clause
:
WhereClause
{
id
:
ast
::
DUMMY_NODE_ID
,
id
:
ast
::
DUMMY_NODE_ID
,
predicates
:
Vec
::
new
(),
predicates
:
Vec
::
new
(),
span
:
syntax_pos
::
DUMMY_SP
,
},
},
span
:
span_lo
.to
(
self
.prev_span
),
span
:
span_lo
.to
(
self
.prev_span
),
})
})
...
@@ -4440,11 +4441,13 @@ pub fn parse_where_clause(&mut self) -> PResult<'a, WhereClause> {
...
@@ -4440,11 +4441,13 @@ pub fn parse_where_clause(&mut self) -> PResult<'a, WhereClause> {
let
mut
where_clause
=
WhereClause
{
let
mut
where_clause
=
WhereClause
{
id
:
ast
::
DUMMY_NODE_ID
,
id
:
ast
::
DUMMY_NODE_ID
,
predicates
:
Vec
::
new
(),
predicates
:
Vec
::
new
(),
span
:
syntax_pos
::
DUMMY_SP
,
};
};
if
!
self
.eat_keyword
(
keywords
::
Where
)
{
if
!
self
.eat_keyword
(
keywords
::
Where
)
{
return
Ok
(
where_clause
);
return
Ok
(
where_clause
);
}
}
let
lo
=
self
.prev_span
;
// This is a temporary future proofing.
// This is a temporary future proofing.
//
//
...
@@ -4522,6 +4525,7 @@ pub fn parse_where_clause(&mut self) -> PResult<'a, WhereClause> {
...
@@ -4522,6 +4525,7 @@ pub fn parse_where_clause(&mut self) -> PResult<'a, WhereClause> {
}
}
}
}
where_clause
.span
=
lo
.to
(
self
.prev_span
);
Ok
(
where_clause
)
Ok
(
where_clause
)
}
}
...
...
src/libsyntax/print/pprust.rs
浏览文件 @
6375b77e
...
@@ -1041,6 +1041,7 @@ pub fn print_type(&mut self, ty: &ast::Ty) -> io::Result<()> {
...
@@ -1041,6 +1041,7 @@ pub fn print_type(&mut self, ty: &ast::Ty) -> io::Result<()> {
where_clause
:
ast
::
WhereClause
{
where_clause
:
ast
::
WhereClause
{
id
:
ast
::
DUMMY_NODE_ID
,
id
:
ast
::
DUMMY_NODE_ID
,
predicates
:
Vec
::
new
(),
predicates
:
Vec
::
new
(),
span
:
syntax_pos
::
DUMMY_SP
,
},
},
span
:
syntax_pos
::
DUMMY_SP
,
span
:
syntax_pos
::
DUMMY_SP
,
};
};
...
@@ -2983,6 +2984,7 @@ pub fn print_ty_fn(&mut self,
...
@@ -2983,6 +2984,7 @@ pub fn print_ty_fn(&mut self,
where_clause
:
ast
::
WhereClause
{
where_clause
:
ast
::
WhereClause
{
id
:
ast
::
DUMMY_NODE_ID
,
id
:
ast
::
DUMMY_NODE_ID
,
predicates
:
Vec
::
new
(),
predicates
:
Vec
::
new
(),
span
:
syntax_pos
::
DUMMY_SP
,
},
},
span
:
syntax_pos
::
DUMMY_SP
,
span
:
syntax_pos
::
DUMMY_SP
,
};
};
...
...
src/libsyntax_ext/deriving/generic/ty.rs
浏览文件 @
6375b77e
...
@@ -216,6 +216,7 @@ fn mk_generics(lifetimes: Vec<ast::LifetimeDef>, ty_params: Vec<ast::TyParam>, s
...
@@ -216,6 +216,7 @@ fn mk_generics(lifetimes: Vec<ast::LifetimeDef>, ty_params: Vec<ast::TyParam>, s
where_clause
:
ast
::
WhereClause
{
where_clause
:
ast
::
WhereClause
{
id
:
ast
::
DUMMY_NODE_ID
,
id
:
ast
::
DUMMY_NODE_ID
,
predicates
:
Vec
::
new
(),
predicates
:
Vec
::
new
(),
span
:
span
,
},
},
span
:
span
,
span
:
span
,
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录