| // Copyright 2015 Canonical Ltd. | |
| // Licensed under the LGPLv3, see LICENCE file for details. | |
| package schema | |
| import ( | |
| "fmt" | |
| ) | |
| type error_ struct { | |
| want string | |
| got interface{} | |
| path []string | |
| } | |
| func (e error_) Error() string { | |
| path := pathAsPrefix(e.path) | |
| if e.want == "" { | |
| return fmt.Sprintf("%sunexpected value %#v", path, e.got) | |
| } | |
| if e.got == nil { | |
| return fmt.Sprintf("%sexpected %s, got nothing", path, e.want) | |
| } | |
| return fmt.Sprintf("%sexpected %s, got %T(%#v)", path, e.want, e.got, e.got) | |
| } |