Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
int
Rust
提交
a18be44d
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,发现更多精彩内容 >>
提交
a18be44d
编写于
7月 21, 2018
作者:
V
Vadim Petrochenkov
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Avoid using `#[macro_export]` for documenting builtin macros
上级
878dd0b5
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
43 addition
and
58 deletion
+43
-58
src/libcore/macros.rs
src/libcore/macros.rs
+17
-32
src/librustc/hir/lowering.rs
src/librustc/hir/lowering.rs
+2
-1
src/librustdoc/clean/mod.rs
src/librustdoc/clean/mod.rs
+5
-7
src/libstd/macros.rs
src/libstd/macros.rs
+17
-17
src/libsyntax/feature_gate.rs
src/libsyntax/feature_gate.rs
+2
-1
未找到文件。
src/libcore/macros.rs
浏览文件 @
a18be44d
...
...
@@ -543,6 +543,7 @@
/// into libsyntax itself.
///
/// For more information, see documentation for `std`'s macros.
#[cfg(dox)]
mod
builtin
{
/// Unconditionally causes compilation to fail with the given error message when encountered.
...
...
@@ -551,8 +552,7 @@ mod builtin {
///
/// [`std::compile_error!`]: ../std/macro.compile_error.html
#[stable(feature
=
"compile_error_macro"
,
since
=
"1.20.0"
)]
#[macro_export]
#[cfg(dox)]
#[rustc_doc_only_macro]
macro_rules!
compile_error
{
(
$msg:expr
)
=>
({
/* compiler built-in */
});
(
$msg:expr
,)
=>
({
/* compiler built-in */
});
...
...
@@ -564,8 +564,7 @@ mod builtin {
///
/// [`std::format_args!`]: ../std/macro.format_args.html
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[macro_export]
#[cfg(dox)]
#[rustc_doc_only_macro]
macro_rules!
format_args
{
(
$fmt:expr
)
=>
({
/* compiler built-in */
});
(
$fmt:expr
,
$
(
$args:tt
)
*
)
=>
({
/* compiler built-in */
});
...
...
@@ -577,8 +576,7 @@ mod builtin {
///
/// [`std::env!`]: ../std/macro.env.html
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[macro_export]
#[cfg(dox)]
#[rustc_doc_only_macro]
macro_rules!
env
{
(
$name:expr
)
=>
({
/* compiler built-in */
});
(
$name:expr
,)
=>
({
/* compiler built-in */
});
...
...
@@ -590,8 +588,7 @@ mod builtin {
///
/// [`std::option_env!`]: ../std/macro.option_env.html
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[macro_export]
#[cfg(dox)]
#[rustc_doc_only_macro]
macro_rules!
option_env
{
(
$name:expr
)
=>
({
/* compiler built-in */
});
(
$name:expr
,)
=>
({
/* compiler built-in */
});
...
...
@@ -603,8 +600,7 @@ mod builtin {
///
/// [`std::concat_idents!`]: ../std/macro.concat_idents.html
#[unstable(feature
=
"concat_idents_macro"
,
issue
=
"29599"
)]
#[macro_export]
#[cfg(dox)]
#[rustc_doc_only_macro]
macro_rules!
concat_idents
{
(
$
(
$e:ident
),
+
)
=>
({
/* compiler built-in */
});
(
$
(
$e:ident
,)
+
)
=>
({
/* compiler built-in */
});
...
...
@@ -616,8 +612,7 @@ mod builtin {
///
/// [`std::concat!`]: ../std/macro.concat.html
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[macro_export]
#[cfg(dox)]
#[rustc_doc_only_macro]
macro_rules!
concat
{
(
$
(
$e:expr
),
*
)
=>
({
/* compiler built-in */
});
(
$
(
$e:expr
,)
*
)
=>
({
/* compiler built-in */
});
...
...
@@ -629,8 +624,7 @@ mod builtin {
///
/// [`std::line!`]: ../std/macro.line.html
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[macro_export]
#[cfg(dox)]
#[rustc_doc_only_macro]
macro_rules!
line
{
()
=>
({
/* compiler built-in */
})
}
/// A macro which expands to the column number on which it was invoked.
...
...
@@ -639,8 +633,7 @@ mod builtin {
///
/// [`std::column!`]: ../std/macro.column.html
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[macro_export]
#[cfg(dox)]
#[rustc_doc_only_macro]
macro_rules!
column
{
()
=>
({
/* compiler built-in */
})
}
/// A macro which expands to the file name from which it was invoked.
...
...
@@ -649,8 +642,7 @@ mod builtin {
///
/// [`std::file!`]: ../std/macro.file.html
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[macro_export]
#[cfg(dox)]
#[rustc_doc_only_macro]
macro_rules!
file
{
()
=>
({
/* compiler built-in */
})
}
/// A macro which stringifies its arguments.
...
...
@@ -659,8 +651,7 @@ mod builtin {
///
/// [`std::stringify!`]: ../std/macro.stringify.html
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[macro_export]
#[cfg(dox)]
#[rustc_doc_only_macro]
macro_rules!
stringify
{
(
$
(
$t:tt
)
*
)
=>
({
/* compiler built-in */
})
}
/// Includes a utf8-encoded file as a string.
...
...
@@ -669,8 +660,7 @@ mod builtin {
///
/// [`std::include_str!`]: ../std/macro.include_str.html
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[macro_export]
#[cfg(dox)]
#[rustc_doc_only_macro]
macro_rules!
include_str
{
(
$file:expr
)
=>
({
/* compiler built-in */
});
(
$file:expr
,)
=>
({
/* compiler built-in */
});
...
...
@@ -682,8 +672,7 @@ mod builtin {
///
/// [`std::include_bytes!`]: ../std/macro.include_bytes.html
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[macro_export]
#[cfg(dox)]
#[rustc_doc_only_macro]
macro_rules!
include_bytes
{
(
$file:expr
)
=>
({
/* compiler built-in */
});
(
$file:expr
,)
=>
({
/* compiler built-in */
});
...
...
@@ -695,8 +684,7 @@ mod builtin {
///
/// [`std::module_path!`]: ../std/macro.module_path.html
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[macro_export]
#[cfg(dox)]
#[rustc_doc_only_macro]
macro_rules!
module_path
{
()
=>
({
/* compiler built-in */
})
}
/// Boolean evaluation of configuration flags, at compile-time.
...
...
@@ -705,8 +693,7 @@ mod builtin {
///
/// [`std::cfg!`]: ../std/macro.cfg.html
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[macro_export]
#[cfg(dox)]
#[rustc_doc_only_macro]
macro_rules!
cfg
{
(
$
(
$cfg:tt
)
*
)
=>
({
/* compiler built-in */
})
}
/// Parse a file as an expression or an item according to the context.
...
...
@@ -715,8 +702,7 @@ mod builtin {
///
/// [`std::include!`]: ../std/macro.include.html
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[macro_export]
#[cfg(dox)]
#[rustc_doc_only_macro]
macro_rules!
include
{
(
$file:expr
)
=>
({
/* compiler built-in */
});
(
$file:expr
,)
=>
({
/* compiler built-in */
});
...
...
@@ -727,9 +713,8 @@ mod builtin {
/// For more information, see the documentation for [`std::assert!`].
///
/// [`std::assert!`]: ../std/macro.assert.html
#[
macro_export
]
#[
rustc_doc_only_macro
]
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[cfg(dox)]
macro_rules!
assert
{
(
$cond:expr
)
=>
({
/* compiler built-in */
});
(
$cond:expr
,)
=>
({
/* compiler built-in */
});
...
...
src/librustc/hir/lowering.rs
浏览文件 @
a18be44d
...
...
@@ -3191,7 +3191,8 @@ pub fn lower_item(&mut self, i: &Item) -> Option<hir::Item> {
let
mut
vis
=
self
.lower_visibility
(
&
i
.vis
,
None
);
let
attrs
=
self
.lower_attrs
(
&
i
.attrs
);
if
let
ItemKind
::
MacroDef
(
ref
def
)
=
i
.node
{
if
!
def
.legacy
||
attr
::
contains_name
(
&
i
.attrs
,
"macro_export"
)
{
if
!
def
.legacy
||
attr
::
contains_name
(
&
i
.attrs
,
"macro_export"
)
||
attr
::
contains_name
(
&
i
.attrs
,
"rustc_doc_only_macro"
)
{
let
body
=
self
.lower_token_stream
(
def
.stream
());
self
.exported_macros
.push
(
hir
::
MacroDef
{
name
,
...
...
src/librustdoc/clean/mod.rs
浏览文件 @
a18be44d
...
...
@@ -1253,15 +1253,13 @@ fn macro_resolve(cx: &DocContext, path_str: &str) -> Option<Def> {
.resolve_macro_to_def_inner
(
mark
,
&
path
,
MacroKind
::
Bang
,
false
);
if
let
Ok
(
def
)
=
res
{
if
let
SyntaxExtension
::
DeclMacro
{
..
}
=
*
resolver
.get_macro
(
def
)
{
Some
(
def
)
}
else
{
None
return
Some
(
def
);
}
}
else
if
let
Some
(
def
)
=
resolver
.all_macros
.get
(
&
Symbol
::
intern
(
path_str
))
{
Some
(
*
def
)
}
else
{
None
}
if
let
Some
(
def
)
=
resolver
.all_macros
.get
(
&
Symbol
::
intern
(
path_str
))
{
return
Some
(
*
def
);
}
None
}
#[derive(Debug)]
...
...
src/libstd/macros.rs
浏览文件 @
a18be44d
...
...
@@ -303,7 +303,7 @@
/// macro, but are documented here. Their implementations can be found hardcoded
/// into libsyntax itself.
#[cfg(dox)]
pub
mod
builtin
{
mod
builtin
{
/// Unconditionally causes compilation to fail with the given error message when encountered.
///
...
...
@@ -341,7 +341,7 @@ pub mod builtin {
///
/// [`panic!`]: ../std/macro.panic.html
#[stable(feature
=
"compile_error_macro"
,
since
=
"1.20.0"
)]
#[
macro_export
]
#[
rustc_doc_only_macro
]
macro_rules!
compile_error
{
(
$msg:expr
)
=>
({
/* compiler built-in */
});
(
$msg:expr
,)
=>
({
/* compiler built-in */
});
...
...
@@ -393,7 +393,7 @@ pub mod builtin {
/// assert_eq!(s, format!("hello {}", "world"));
/// ```
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[
macro_export
]
#[
rustc_doc_only_macro
]
macro_rules!
format_args
{
(
$fmt:expr
)
=>
({
/* compiler built-in */
});
(
$fmt:expr
,
$
(
$args:tt
)
*
)
=>
({
/* compiler built-in */
});
...
...
@@ -431,7 +431,7 @@ pub mod builtin {
/// error: what's that?!
/// ```
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[
macro_export
]
#[
rustc_doc_only_macro
]
macro_rules!
env
{
(
$name:expr
)
=>
({
/* compiler built-in */
});
(
$name:expr
,)
=>
({
/* compiler built-in */
});
...
...
@@ -457,7 +457,7 @@ pub mod builtin {
/// println!("the secret key might be: {:?}", key);
/// ```
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[
macro_export
]
#[
rustc_doc_only_macro
]
macro_rules!
option_env
{
(
$name:expr
)
=>
({
/* compiler built-in */
});
(
$name:expr
,)
=>
({
/* compiler built-in */
});
...
...
@@ -488,7 +488,7 @@ pub mod builtin {
/// # }
/// ```
#[unstable(feature
=
"concat_idents_macro"
,
issue
=
"29599"
)]
#[
macro_export
]
#[
rustc_doc_only_macro
]
macro_rules!
concat_idents
{
(
$
(
$e:ident
),
+
)
=>
({
/* compiler built-in */
});
(
$
(
$e:ident
,)
+
)
=>
({
/* compiler built-in */
});
...
...
@@ -510,7 +510,7 @@ pub mod builtin {
/// assert_eq!(s, "test10btrue");
/// ```
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[
macro_export
]
#[
rustc_doc_only_macro
]
macro_rules!
concat
{
(
$
(
$e:expr
),
*
)
=>
({
/* compiler built-in */
});
(
$
(
$e:expr
,)
*
)
=>
({
/* compiler built-in */
});
...
...
@@ -538,7 +538,7 @@ pub mod builtin {
/// println!("defined on line: {}", current_line);
/// ```
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[
macro_export
]
#[
rustc_doc_only_macro
]
macro_rules!
line
{
()
=>
({
/* compiler built-in */
})
}
/// A macro which expands to the column number on which it was invoked.
...
...
@@ -563,7 +563,7 @@ pub mod builtin {
/// println!("defined on column: {}", current_col);
/// ```
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[
macro_export
]
#[
rustc_doc_only_macro
]
macro_rules!
column
{
()
=>
({
/* compiler built-in */
})
}
/// A macro which expands to the file name from which it was invoked.
...
...
@@ -587,7 +587,7 @@ pub mod builtin {
/// println!("defined in file: {}", this_file);
/// ```
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[
macro_export
]
#[
rustc_doc_only_macro
]
macro_rules!
file
{
()
=>
({
/* compiler built-in */
})
}
/// A macro which stringifies its arguments.
...
...
@@ -606,7 +606,7 @@ pub mod builtin {
/// assert_eq!(one_plus_one, "1 + 1");
/// ```
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[
macro_export
]
#[
rustc_doc_only_macro
]
macro_rules!
stringify
{
(
$
(
$t:tt
)
*
)
=>
({
/* compiler built-in */
})
}
/// Includes a utf8-encoded file as a string.
...
...
@@ -640,7 +640,7 @@ pub mod builtin {
///
/// Compiling 'main.rs' and running the resulting binary will print "adiós".
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[
macro_export
]
#[
rustc_doc_only_macro
]
macro_rules!
include_str
{
(
$file:expr
)
=>
({
/* compiler built-in */
});
(
$file:expr
,)
=>
({
/* compiler built-in */
});
...
...
@@ -677,7 +677,7 @@ pub mod builtin {
///
/// Compiling 'main.rs' and running the resulting binary will print "adiós".
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[
macro_export
]
#[
rustc_doc_only_macro
]
macro_rules!
include_bytes
{
(
$file:expr
)
=>
({
/* compiler built-in */
});
(
$file:expr
,)
=>
({
/* compiler built-in */
});
...
...
@@ -701,7 +701,7 @@ pub mod builtin {
/// test::foo();
/// ```
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[
macro_export
]
#[
rustc_doc_only_macro
]
macro_rules!
module_path
{
()
=>
({
/* compiler built-in */
})
}
/// Boolean evaluation of configuration flags, at compile-time.
...
...
@@ -723,7 +723,7 @@ pub mod builtin {
/// };
/// ```
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[
macro_export
]
#[
rustc_doc_only_macro
]
macro_rules!
cfg
{
(
$
(
$cfg:tt
)
*
)
=>
({
/* compiler built-in */
})
}
/// Parse a file as an expression or an item according to the context.
...
...
@@ -766,7 +766,7 @@ pub mod builtin {
/// Compiling 'main.rs' and running the resulting binary will print
/// "🙈🙊🙉🙈🙊🙉".
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[
macro_export
]
#[
rustc_doc_only_macro
]
macro_rules!
include
{
(
$file:expr
)
=>
({
/* compiler built-in */
});
(
$file:expr
,)
=>
({
/* compiler built-in */
});
...
...
@@ -819,7 +819,7 @@ pub mod builtin {
/// assert!(a + b == 30, "a = {}, b = {}", a, b);
/// ```
#[stable(feature
=
"rust1"
,
since
=
"1.0.0"
)]
#[
macro_export
]
#[
rustc_doc_only_macro
]
macro_rules!
assert
{
(
$cond:expr
)
=>
({
/* compiler built-in */
});
(
$cond:expr
,)
=>
({
/* compiler built-in */
});
...
...
src/libsyntax/feature_gate.rs
浏览文件 @
a18be44d
...
...
@@ -686,7 +686,8 @@ pub fn deprecated_attributes() -> Vec<&'static (&'static str, AttributeType, Att
}
pub
fn
is_builtin_attr
(
attr
:
&
ast
::
Attribute
)
->
bool
{
BUILTIN_ATTRIBUTES
.iter
()
.any
(|
&
(
builtin_name
,
_
,
_
)|
attr
.check_name
(
builtin_name
))
BUILTIN_ATTRIBUTES
.iter
()
.any
(|
&
(
builtin_name
,
_
,
_
)|
attr
.check_name
(
builtin_name
))
||
attr
.name
()
.as_str
()
.starts_with
(
"rustc_"
)
}
// Attributes that have a special meaning to rustc or rustdoc
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录