mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-22 23:04:33 +00:00
Rollup merge of #106383 - Manishearth:ast-docs, r=compiler-errors
Document some of the AST nodes Someone was confused about some of this on Zulip, added some docs We probably should make sure every last field/variant in the AST/HIR is documented at some point `@bors` rollup
This commit is contained in:
commit
d4cf00f03d
@ -2743,8 +2743,19 @@ impl Item {
|
||||
/// `extern` qualifier on a function item or function type.
|
||||
#[derive(Clone, Copy, Encodable, Decodable, Debug)]
|
||||
pub enum Extern {
|
||||
/// No explicit extern keyword was used
|
||||
///
|
||||
/// E.g. `fn foo() {}`
|
||||
None,
|
||||
/// An explicit extern keyword was used, but with implicit ABI
|
||||
///
|
||||
/// E.g. `extern fn foo() {}`
|
||||
///
|
||||
/// This is just `extern "C"` (see `rustc_target::spec::abi::Abi::FALLBACK`)
|
||||
Implicit(Span),
|
||||
/// An explicit extern keyword was used with an explicit ABI
|
||||
///
|
||||
/// E.g. `extern "C" fn foo() {}`
|
||||
Explicit(StrLit, Span),
|
||||
}
|
||||
|
||||
@ -2763,9 +2774,13 @@ impl Extern {
|
||||
/// included in this struct (e.g., `async unsafe fn` or `const extern "C" fn`).
|
||||
#[derive(Clone, Copy, Encodable, Decodable, Debug)]
|
||||
pub struct FnHeader {
|
||||
/// The `unsafe` keyword, if any
|
||||
pub unsafety: Unsafe,
|
||||
/// The `async` keyword, if any
|
||||
pub asyncness: Async,
|
||||
/// The `const` keyword, if any
|
||||
pub constness: Const,
|
||||
/// The `extern` keyword and corresponding ABI string, if any
|
||||
pub ext: Extern,
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user