Documentation ¶
Overview ¶
Package errutil provides methods for working with errors
Index ¶
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Chain ¶
Chain executes functions in chain and if one of them return error this function stop chain execution and return this error
Example ¶
f1 := func() error { return nil } f2 := func() error { return nil } f3 := func() error { return fmt.Errorf("Error 3") } f4 := func() error { return fmt.Errorf("Error 4") } err := Chain(f1, f2, f3, f4) fmt.Println(err.Error())
Output: Error 3
Types ¶
type Errors ¶
type Errors struct {
// contains filtered or unexported fields
}
Errors is struct for handling many errors at once
Example ¶
f1 := func() error { return nil } f2 := func() error { return nil } f3 := func() error { return fmt.Errorf("Error 3") } f4 := func() error { return fmt.Errorf("Error 4") } // An Errors needs no initialization var myErrs Errors myErrs.Add(f1()) // Using NewErrors you can create Errors instance with limited capacity errs := NewErrors(10) errs.Add(f1()) errs.Add(f2()) errs.Add(f3()) errs.Add(f4()) fmt.Printf("Last error text: %v\n", errs.Last().Error()) fmt.Printf("Number of errors: %d\n", errs.Num()) fmt.Printf("Capacity: %d\n", errs.Cap()) fmt.Printf("Has errors: %t\n", errs.HasErrors())
Output: Last error text: Error 4 Number of errors: 2 Capacity: 10 Has errors: true
Click to show internal directories.
Click to hide internal directories.