mirror of
				https://github.com/rust-lang/rust.git
				synced 2025-11-04 06:56:14 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			18 lines
		
	
	
		
			359 B
		
	
	
	
		
			Rust
		
	
	
	
	
	
			
		
		
	
	
			18 lines
		
	
	
		
			359 B
		
	
	
	
		
			Rust
		
	
	
	
	
	
#[derive(Debug)]
 | 
						|
enum Foo {
 | 
						|
    Done,
 | 
						|
    Nested(Option<&'static Foo>),
 | 
						|
}
 | 
						|
 | 
						|
fn walk(mut value: &Foo) {
 | 
						|
    loop {
 | 
						|
        println!("{:?}", value);
 | 
						|
        &Foo::Nested(Some(value)) = value else { break }; //~ ERROR invalid left-hand side of assignment
 | 
						|
        //~^ERROR <assignment> ... else { ... } is not allowed
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
fn main() {
 | 
						|
    walk(&Foo::Done);
 | 
						|
}
 |