| 
									
										
										
										
											2017-04-06 14:58:03 +03:00
										 |  |  | // Copyright 2017 The go-ethereum Authors | 
					
						
							|  |  |  | // This file is part of the go-ethereum library. | 
					
						
							|  |  |  | // | 
					
						
							|  |  |  | // The go-ethereum library is free software: you can redistribute it and/or modify | 
					
						
							|  |  |  | // it under the terms of the GNU Lesser General Public License as published by | 
					
						
							|  |  |  | // the Free Software Foundation, either version 3 of the License, or | 
					
						
							|  |  |  | // (at your option) any later version. | 
					
						
							|  |  |  | // | 
					
						
							|  |  |  | // The go-ethereum library is distributed in the hope that it will be useful, | 
					
						
							|  |  |  | // but WITHOUT ANY WARRANTY; without even the implied warranty of | 
					
						
							|  |  |  | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 
					
						
							|  |  |  | // GNU Lesser General Public License for more details. | 
					
						
							|  |  |  | // | 
					
						
							|  |  |  | // You should have received a copy of the GNU Lesser General Public License | 
					
						
							|  |  |  | // along with the go-ethereum library. If not, see <http://www.gnu.org/licenses/>. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | package consensus | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | import "errors" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | var ( | 
					
						
							|  |  |  | 	// ErrUnknownAncestor is returned when validating a block requires an ancestor | 
					
						
							|  |  |  | 	// that is unknown. | 
					
						
							|  |  |  | 	ErrUnknownAncestor = errors.New("unknown ancestor") | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-02-05 18:40:32 +02:00
										 |  |  | 	// ErrPrunedAncestor is returned when validating a block requires an ancestor | 
					
						
							|  |  |  | 	// that is known, but the state of which is not available. | 
					
						
							|  |  |  | 	ErrPrunedAncestor = errors.New("pruned ancestor") | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-04-06 14:58:03 +03:00
										 |  |  | 	// ErrFutureBlock is returned when a block's timestamp is in the future according | 
					
						
							|  |  |  | 	// to the current node. | 
					
						
							|  |  |  | 	ErrFutureBlock = errors.New("block in the future") | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-10-28 16:57:34 +09:00
										 |  |  | 	// ErrInvalidNumber is returned if a block's number doesn't equal its parent's | 
					
						
							| 
									
										
										
										
											2017-04-06 14:58:03 +03:00
										 |  |  | 	// plus one. | 
					
						
							|  |  |  | 	ErrInvalidNumber = errors.New("invalid block number") | 
					
						
							|  |  |  | ) |