Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
int
Rust
提交
0bcb3bc5
R
Rust
项目概览
int
/
Rust
11 个月 前同步成功
通知
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,发现更多精彩内容 >>
提交
0bcb3bc5
编写于
9月 27, 2012
作者:
P
Patrick Walton
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
libsyntax: Parse visibility modifiers before foreign items
上级
7e7411e6
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
15 addition
and
8 deletion
+15
-8
src/libsyntax/ast.rs
src/libsyntax/ast.rs
+2
-1
src/libsyntax/fold.rs
src/libsyntax/fold.rs
+2
-1
src/libsyntax/parse/parser.rs
src/libsyntax/parse/parser.rs
+11
-6
未找到文件。
src/libsyntax/ast.rs
浏览文件 @
0bcb3bc5
...
...
@@ -1485,7 +1485,8 @@ impl class_mutability : cmp::Eq {
attrs
:
~
[
attribute
],
node
:
foreign_item_
,
id
:
node_id
,
span
:
span
};
span
:
span
,
vis
:
visibility
};
#[auto_serialize]
enum
foreign_item_
{
...
...
src/libsyntax/fold.rs
浏览文件 @
0bcb3bc5
...
...
@@ -203,7 +203,8 @@ fn noop_fold_foreign_item(&&ni: @foreign_item, fld: ast_fold)
}
},
id
:
fld
.new_id
(
ni
.id
),
span
:
fld
.new_span
(
ni
.span
)};
span
:
fld
.new_span
(
ni
.span
),
vis
:
ni
.vis
};
}
fn
noop_fold_item
(
&&
i
:
@
item
,
fld
:
ast_fold
)
->
Option
<@
item
>
{
...
...
src/libsyntax/parse/parser.rs
浏览文件 @
0bcb3bc5
...
...
@@ -2940,7 +2940,8 @@ fn parse_item_mod() -> item_info {
(
id
,
item_mod
(
m
),
Some
(
inner_attrs
.inner
))
}
fn
parse_item_foreign_fn
(
+
attrs
:
~
[
attribute
])
->
@
foreign_item
{
fn
parse_item_foreign_fn
(
vis
:
ast
::
visibility
,
+
attrs
:
~
[
attribute
])
->
@
foreign_item
{
let
lo
=
self
.span.lo
;
let
purity
=
self
.parse_fn_purity
();
let
t
=
self
.parse_fn_header
();
...
...
@@ -2951,10 +2952,12 @@ fn parse_item_foreign_fn(+attrs: ~[attribute]) -> @foreign_item {
attrs
:
attrs
,
node
:
foreign_item_fn
(
decl
,
purity
,
t
.tps
),
id
:
self
.get_id
(),
span
:
mk_sp
(
lo
,
hi
)};
span
:
mk_sp
(
lo
,
hi
),
vis
:
vis
};
}
fn
parse_item_foreign_const
(
+
attrs
:
~
[
attribute
])
->
@
foreign_item
{
fn
parse_item_foreign_const
(
vis
:
ast
::
visibility
,
+
attrs
:
~
[
attribute
])
->
@
foreign_item
{
let
lo
=
self
.span.lo
;
self
.expect_keyword
(
~
"const"
);
let
ident
=
self
.parse_ident
();
...
...
@@ -2966,7 +2969,8 @@ fn parse_item_foreign_const(+attrs: ~[attribute]) -> @foreign_item {
attrs
:
attrs
,
node
:
foreign_item_const
(
move
ty
),
id
:
self
.get_id
(),
span
:
mk_sp
(
lo
,
hi
)};
span
:
mk_sp
(
lo
,
hi
),
vis
:
vis
};
}
fn
parse_fn_purity
()
->
purity
{
...
...
@@ -2982,10 +2986,11 @@ fn parse_fn_purity() -> purity {
}
fn
parse_foreign_item
(
+
attrs
:
~
[
attribute
])
->
@
foreign_item
{
let
vis
=
self
.parse_visibility
();
if
self
.is_keyword
(
~
"const"
)
{
self
.parse_item_foreign_const
(
move
attrs
)
self
.parse_item_foreign_const
(
vis
,
move
attrs
)
}
else
{
self
.parse_item_foreign_fn
(
move
attrs
)
self
.parse_item_foreign_fn
(
vis
,
move
attrs
)
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录