Currently all core and std macros are automatically added to the prelude via #[macro_use]. However a situation arose where we want to add a new macro `assert_matches` but don't want to pull it into the standard prelude for compatibility reasons. By explicitly exporting the macros found in the core and std crates we get to decide on a per macro basis and can later add them via the rust_20xx preludes.
27 lines
557 B
Rust
27 lines
557 B
Rust
extern crate std;
|
|
#[prelude_import]
|
|
use ::std::prelude::rust_2015::*;
|
|
//@ pretty-compare-only
|
|
//@ pretty-mode:hir
|
|
//@ pp-exact:hir-struct-expr.pp
|
|
|
|
struct StructWithSomeFields {
|
|
field_1: i32,
|
|
field_2: i32,
|
|
field_3: i32,
|
|
field_4: i32,
|
|
field_5: i32,
|
|
field_6: i32,
|
|
}
|
|
|
|
fn main() {
|
|
let a =
|
|
StructWithSomeFields {
|
|
field_1: 1,
|
|
field_2: 2,
|
|
field_3: 3,
|
|
field_4: 4,
|
|
field_5: 5,
|
|
field_6: 6 };
|
|
let a = StructWithSomeFields { field_1: 1, field_2: 2, ..a };
|
|
}
|