Move /src/test to /tests
This commit is contained in:
parent
ca855e6e42
commit
cf2dff2b1e
27592 changed files with 0 additions and 0 deletions
|
@ -0,0 +1,43 @@
|
|||
// run-pass
|
||||
|
||||
struct A { a: Box<i32> }
|
||||
|
||||
impl A {
|
||||
fn get(&self) -> i32 { *self.a }
|
||||
}
|
||||
|
||||
fn foo(n: i32) -> i32 {
|
||||
let x = A { a: Box::new(n) };
|
||||
let y = match x {
|
||||
A { a: v } if *v == 42 => v,
|
||||
_ => Box::new(0),
|
||||
};
|
||||
*y
|
||||
}
|
||||
|
||||
fn bar(n: i32) -> i32 {
|
||||
let x = A { a: Box::new(n) };
|
||||
let y = match x {
|
||||
A { a: v } if x.get() == 42 => v,
|
||||
_ => Box::new(0),
|
||||
};
|
||||
*y
|
||||
}
|
||||
|
||||
fn baz(n: i32) -> i32 {
|
||||
let x = A { a: Box::new(n) };
|
||||
let y = match x {
|
||||
A { a: v } if *v.clone() == 42 => v,
|
||||
_ => Box::new(0),
|
||||
};
|
||||
*y
|
||||
}
|
||||
|
||||
fn main() {
|
||||
assert_eq!(foo(107), 0);
|
||||
assert_eq!(foo(42), 42);
|
||||
assert_eq!(bar(107), 0);
|
||||
assert_eq!(bar(42), 42);
|
||||
assert_eq!(baz(107), 0);
|
||||
assert_eq!(baz(42), 42);
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue