// Vikunja is a to-do list application to facilitate your life. // Copyright 2018-2020 Vikunja and contributors. All rights reserved. // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // This program 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 General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program. If not, see . package error import "fmt" // ErrValueNotFoundForKey represents an error where a key could not be found type ErrValueNotFoundForKey struct { Key string } // Error is the error implementation func (e *ErrValueNotFoundForKey) Error() string { return fmt.Sprintf("could not find value for key %s", e.Key) } // IsErrValueNotFoundForKey checks if an error is ErrValueNotFoundForKey func IsErrValueNotFoundForKey(err error) bool { _, is := err.(*ErrValueNotFoundForKey) return is } // ErrValueHasWrongType represents an error where a value saved at key has the wrong value type ErrValueHasWrongType struct { Key string ExpectedValue string } // Error is the error implementation func (e *ErrValueHasWrongType) Error() string { return fmt.Sprintf("value at key %s has the wrong value, expexted was %s", e.Key, e.ExpectedValue) } // IsErrValueHasWrongType checks if an error is ErrValueHasWrongType func IsErrValueHasWrongType(err error) bool { _, is := err.(*ErrValueHasWrongType) return is }