Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
int
Rust
提交
a0f2a591
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,发现更多精彩内容 >>
提交
a0f2a591
编写于
10月 16, 2015
作者:
V
Vadim Petrochenkov
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Provide span for visit_enum_def
上级
beeaea4a
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
12 addition
and
11 deletion
+12
-11
src/librustc/middle/check_static_recursion.rs
src/librustc/middle/check_static_recursion.rs
+1
-1
src/librustc_front/visit.rs
src/librustc_front/visit.rs
+3
-5
src/libsyntax/visit.rs
src/libsyntax/visit.rs
+8
-5
未找到文件。
src/librustc/middle/check_static_recursion.rs
浏览文件 @
a0f2a591
...
...
@@ -201,7 +201,7 @@ fn visit_item(&mut self, it: &'ast hir::Item) {
}
fn
visit_enum_def
(
&
mut
self
,
enum_definition
:
&
'ast
hir
::
EnumDef
,
generics
:
&
'ast
hir
::
Generics
,
item_id
:
ast
::
NodeId
)
{
generics
:
&
'ast
hir
::
Generics
,
item_id
:
ast
::
NodeId
,
_
:
Span
)
{
self
.populate_enum_discriminants
(
enum_definition
);
visit
::
walk_enum_def
(
self
,
enum_definition
,
generics
,
item_id
);
}
...
...
src/librustc_front/visit.rs
浏览文件 @
a0f2a591
...
...
@@ -120,7 +120,7 @@ fn visit_struct_field(&mut self, s: &'v StructField) {
walk_struct_field
(
self
,
s
)
}
fn
visit_enum_def
(
&
mut
self
,
enum_definition
:
&
'v
EnumDef
,
generics
:
&
'v
Generics
,
item_id
:
NodeId
)
{
generics
:
&
'v
Generics
,
item_id
:
NodeId
,
_
:
Span
)
{
walk_enum_def
(
self
,
enum_definition
,
generics
,
item_id
)
}
fn
visit_variant
(
&
mut
self
,
v
:
&
'v
Variant
,
g
:
&
'v
Generics
,
item_id
:
NodeId
)
{
...
...
@@ -293,7 +293,7 @@ pub fn walk_item<'v, V: Visitor<'v>>(visitor: &mut V, item: &'v Item) {
}
ItemEnum
(
ref
enum_definition
,
ref
type_parameters
)
=>
{
visitor
.visit_generics
(
type_parameters
);
visitor
.visit_enum_def
(
enum_definition
,
type_parameters
,
item
.id
)
visitor
.visit_enum_def
(
enum_definition
,
type_parameters
,
item
.id
,
item
.span
)
}
ItemDefaultImpl
(
_
,
ref
trait_ref
)
=>
{
visitor
.visit_trait_ref
(
trait_ref
)
...
...
@@ -326,9 +326,7 @@ pub fn walk_enum_def<'v, V: Visitor<'v>>(visitor: &mut V,
enum_definition
:
&
'v
EnumDef
,
generics
:
&
'v
Generics
,
item_id
:
NodeId
)
{
for
variant
in
&
enum_definition
.variants
{
visitor
.visit_variant
(
variant
,
generics
,
item_id
);
}
walk_list!
(
visitor
,
visit_variant
,
&
enum_definition
.variants
,
generics
,
item_id
);
}
pub
fn
walk_variant
<
'v
,
V
:
Visitor
<
'v
>>
(
visitor
:
&
mut
V
,
...
...
src/libsyntax/visit.rs
浏览文件 @
a0f2a591
...
...
@@ -86,7 +86,7 @@ fn visit_variant_data(&mut self, s: &'v VariantData, _: Ident,
}
fn
visit_struct_field
(
&
mut
self
,
s
:
&
'v
StructField
)
{
walk_struct_field
(
self
,
s
)
}
fn
visit_enum_def
(
&
mut
self
,
enum_definition
:
&
'v
EnumDef
,
generics
:
&
'v
Generics
,
item_id
:
NodeId
)
{
generics
:
&
'v
Generics
,
item_id
:
NodeId
,
_
:
Span
)
{
walk_enum_def
(
self
,
enum_definition
,
generics
,
item_id
)
}
fn
visit_variant
(
&
mut
self
,
v
:
&
'v
Variant
,
g
:
&
'v
Generics
,
item_id
:
NodeId
)
{
...
...
@@ -136,6 +136,11 @@ fn visit_macro_def(&mut self, macro_def: &'v MacroDef) {
for
elem
in
$list
{
$visitor
.
$method
(
elem
)
}
};
(
$visitor
:
expr
,
$method
:
ident
,
$list
:
expr
,
$
(
$extra_args
:
expr
),
*
)
=>
{
for
elem
in
$list
{
$visitor
.
$method
(
elem
,
$
(
$extra_args
,)
*
)
}
}
}
...
...
@@ -272,7 +277,7 @@ pub fn walk_item<'v, V: Visitor<'v>>(visitor: &mut V, item: &'v Item) {
}
ItemEnum
(
ref
enum_definition
,
ref
type_parameters
)
=>
{
visitor
.visit_generics
(
type_parameters
);
visitor
.visit_enum_def
(
enum_definition
,
type_parameters
,
item
.id
)
visitor
.visit_enum_def
(
enum_definition
,
type_parameters
,
item
.id
,
item
.span
)
}
ItemDefaultImpl
(
_
,
ref
trait_ref
)
=>
{
visitor
.visit_trait_ref
(
trait_ref
)
...
...
@@ -306,9 +311,7 @@ pub fn walk_enum_def<'v, V: Visitor<'v>>(visitor: &mut V,
enum_definition
:
&
'v
EnumDef
,
generics
:
&
'v
Generics
,
item_id
:
NodeId
)
{
for
variant
in
&
enum_definition
.variants
{
visitor
.visit_variant
(
variant
,
generics
,
item_id
);
}
walk_list!
(
visitor
,
visit_variant
,
&
enum_definition
.variants
,
generics
,
item_id
);
}
pub
fn
walk_variant
<
'v
,
V
:
Visitor
<
'v
>>
(
visitor
:
&
mut
V
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录