Added godoc
This commit is contained in:
		
							parent
							
								
									0570e1925b
								
							
						
					
					
						commit
						55ed5598e0
					
				
					 1 changed files with 48 additions and 0 deletions
				
			
		
							
								
								
									
										48
									
								
								pkg.go
									
										
									
									
									
								
							
							
						
						
									
										48
									
								
								pkg.go
									
										
									
									
									
								
							|  | @ -1,3 +1,51 @@ | ||||||
|  | /* | ||||||
|  | wrappederror provides traceable errors: | ||||||
|  | 
 | ||||||
|  | 	package main | ||||||
|  | 
 | ||||||
|  | 	import ( | ||||||
|  | 		// External | ||||||
|  | 		werr "git.gibonuddevalla.se/go/wrappederror" | ||||||
|  | 
 | ||||||
|  | 		// Standard | ||||||
|  | 		"encoding/json" | ||||||
|  | 		"errors" | ||||||
|  | 		"fmt" | ||||||
|  | 		"os" | ||||||
|  | 	) | ||||||
|  | 
 | ||||||
|  | 	func errorHandler(err werr.Error) { | ||||||
|  | 		// For example print or log error to file | ||||||
|  | 		fmt.Printf("\x1b[31;1m%s\x1b[0m\n", err) | ||||||
|  | 		fmt.Printf("\x1b[33;1m%s\x1b[0m\n", err.NoTrace()) | ||||||
|  | 
 | ||||||
|  | 		j, _ := json.MarshalIndent(err, "", "    ") | ||||||
|  | 		fmt.Printf("%s\n\n", j) | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	func main() { | ||||||
|  | 		// Make file paths relative to this file. | ||||||
|  | 		werr.Init() | ||||||
|  | 
 | ||||||
|  | 		// Handler to call when using Log(). | ||||||
|  | 		werr.SetLogCallback(errorHandler) | ||||||
|  | 
 | ||||||
|  | 		// Wrap an existing error. | ||||||
|  | 		err := errors.New("foobar 1") | ||||||
|  | 		err1 := werr.Wrap(err) | ||||||
|  | 
 | ||||||
|  | 		// Create a new error with extra information. | ||||||
|  | 		err2 := werr.New("foobar 2").WithCode("FOO-100").WithData(137) | ||||||
|  | 
 | ||||||
|  | 		// The os error contains more information. | ||||||
|  | 		_, errOS := os.ReadFile("/tmp/does_not_exist") | ||||||
|  | 		werr.Wrap(errOS).Log() | ||||||
|  | 
 | ||||||
|  | 		// Log the previously wrapped errors. | ||||||
|  | 		werr.Wrap(err1).Log() | ||||||
|  | 		werr.Wrap(err2).Log() | ||||||
|  | 	} | ||||||
|  | */ | ||||||
| package WrappedError | package WrappedError | ||||||
| 
 | 
 | ||||||
| import ( | import ( | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue