mirror of
https://github.com/rust-lang/rustlings.git
synced 2026-01-07 03:09:19 +00:00
21 lines
620 B
Rust
21 lines
620 B
Rust
// options3.rs
|
|
// Execute `rustlings hint options3` or use the `hint` watch subcommand for a hint.
|
|
|
|
struct Point {
|
|
x: i32,
|
|
y: i32,
|
|
}
|
|
|
|
fn main() {
|
|
let y: Option<Point> = Some(Point { x: 100, y: 200 });
|
|
|
|
match y {
|
|
// ref annotates pattern bindings to make them borrow rather than move.
|
|
// It is not a part of the pattern as far as matching is concerned:
|
|
// it does not affect whether a value is matched, only how it is matched.
|
|
Some(ref p) => println!("Co-ordinates are {},{} ", p.x, p.y),
|
|
_ => panic!("no match!"),
|
|
}
|
|
y; // Fix without deleting this line.
|
|
}
|