summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/francoispqt/gojay/errors.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/francoispqt/gojay/errors.go')
-rw-r--r--vendor/github.com/francoispqt/gojay/errors.go88
1 files changed, 88 insertions, 0 deletions
diff --git a/vendor/github.com/francoispqt/gojay/errors.go b/vendor/github.com/francoispqt/gojay/errors.go
new file mode 100644
index 00000000..0fd52e66
--- /dev/null
+++ b/vendor/github.com/francoispqt/gojay/errors.go
@@ -0,0 +1,88 @@
+package gojay
+
+import (
+ "errors"
+ "fmt"
+)
+
+const invalidJSONCharErrorMsg = "Invalid JSON, wrong char '%c' found at position %d"
+
+// InvalidJSONError is a type representing an error returned when
+// Decoding encounters invalid JSON.
+type InvalidJSONError string
+
+func (err InvalidJSONError) Error() string {
+ return string(err)
+}
+
+func (dec *Decoder) raiseInvalidJSONErr(pos int) error {
+ var c byte
+ if len(dec.data) > pos {
+ c = dec.data[pos]
+ }
+ dec.err = InvalidJSONError(
+ fmt.Sprintf(
+ invalidJSONCharErrorMsg,
+ c,
+ pos,
+ ),
+ )
+ return dec.err
+}
+
+const invalidUnmarshalErrorMsg = "Cannot unmarshal JSON to type '%T'"
+
+// InvalidUnmarshalError is a type representing an error returned when
+// Decoding cannot unmarshal JSON to the receiver type for various reasons.
+type InvalidUnmarshalError string
+
+func (err InvalidUnmarshalError) Error() string {
+ return string(err)
+}
+
+func (dec *Decoder) makeInvalidUnmarshalErr(v interface{}) error {
+ return InvalidUnmarshalError(
+ fmt.Sprintf(
+ invalidUnmarshalErrorMsg,
+ v,
+ ),
+ )
+}
+
+const invalidMarshalErrorMsg = "Invalid type %T provided to Marshal"
+
+// InvalidMarshalError is a type representing an error returned when
+// Encoding did not find the proper way to encode
+type InvalidMarshalError string
+
+func (err InvalidMarshalError) Error() string {
+ return string(err)
+}
+
+// NoReaderError is a type representing an error returned when
+// decoding requires a reader and none was given
+type NoReaderError string
+
+func (err NoReaderError) Error() string {
+ return string(err)
+}
+
+// InvalidUsagePooledDecoderError is a type representing an error returned
+// when decoding is called on a still pooled Decoder
+type InvalidUsagePooledDecoderError string
+
+func (err InvalidUsagePooledDecoderError) Error() string {
+ return string(err)
+}
+
+// InvalidUsagePooledEncoderError is a type representing an error returned
+// when decoding is called on a still pooled Encoder
+type InvalidUsagePooledEncoderError string
+
+func (err InvalidUsagePooledEncoderError) Error() string {
+ return string(err)
+}
+
+// ErrUnmarshalPtrExpected is the error returned when unmarshal expects a pointer value,
+// When using `dec.ObjectNull` or `dec.ArrayNull` for example.
+var ErrUnmarshalPtrExpected = errors.New("Cannot unmarshal to given value, a pointer is expected")