| 
						
						
							
								
							
						
						
					 | 
					 | 
					@ -11,7 +11,7 @@ struct Drain<'a, T: 'a> {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    // Need to bound the lifetime here, so we do it with `&'a mut Vec<T>`
 | 
					 | 
					 | 
					 | 
					    // Need to bound the lifetime here, so we do it with `&'a mut Vec<T>`
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    // because that's semantically what we contain. We're "just" calling
 | 
					 | 
					 | 
					 | 
					    // because that's semantically what we contain. We're "just" calling
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    // `pop()` and `remove(0)`.
 | 
					 | 
					 | 
					 | 
					    // `pop()` and `remove(0)`.
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    vec: PhantomData<&'a mut Vec<T>>
 | 
					 | 
					 | 
					 | 
					    vec: PhantomData<&'a mut Vec<T>>,
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    start: *const T,
 | 
					 | 
					 | 
					 | 
					    start: *const T,
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    end: *const T,
 | 
					 | 
					 | 
					 | 
					    end: *const T,
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					}
 | 
					 | 
					 | 
					 | 
					}
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					 | 
					
 
 |