summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/mattermost/gorp/errors.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/mattermost/gorp/errors.go')
-rw-r--r--vendor/github.com/mattermost/gorp/errors.go38
1 files changed, 38 insertions, 0 deletions
diff --git a/vendor/github.com/mattermost/gorp/errors.go b/vendor/github.com/mattermost/gorp/errors.go
new file mode 100644
index 000000000..d13f03fc3
--- /dev/null
+++ b/vendor/github.com/mattermost/gorp/errors.go
@@ -0,0 +1,38 @@
+// Copyright 2012 James Cooper. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package gorp provides a simple way to marshal Go structs to and from
+// SQL databases. It uses the database/sql package, and should work with any
+// compliant database/sql driver.
+//
+// Source code and project home:
+// https://github.com/go-gorp/gorp
+
+package gorp
+
+import (
+ "fmt"
+)
+
+// A non-fatal error, when a select query returns columns that do not exist
+// as fields in the struct it is being mapped to
+// TODO: discuss wether this needs an error. encoding/json silently ignores missing fields
+type NoFieldInTypeError struct {
+ TypeName string
+ MissingColNames []string
+}
+
+func (err *NoFieldInTypeError) Error() string {
+ return fmt.Sprintf("gorp: no fields %+v in type %s", err.MissingColNames, err.TypeName)
+}
+
+// returns true if the error is non-fatal (ie, we shouldn't immediately return)
+func NonFatalError(err error) bool {
+ switch err.(type) {
+ case *NoFieldInTypeError:
+ return true
+ default:
+ return false
+ }
+}