initial commits
parent
bb64ec8664
commit
55e928d3cf
|
@ -0,0 +1,19 @@
|
||||||
|
package rfc8259errors
|
||||||
|
|
||||||
|
import (
|
||||||
|
"sourcecode.social/reiver/go-erorr"
|
||||||
|
)
|
||||||
|
|
||||||
|
const (
|
||||||
|
ErrNilDestination = erorr.Error("rfc8259: nil destination")
|
||||||
|
ErrNilRuneScanner = erorr.Error("rfc8259: nil rune-scanner")
|
||||||
|
ErrUnexpectedEndOfFile = erorr.Error("rfc8259: unexpected end-of-file")
|
||||||
|
)
|
||||||
|
|
||||||
|
func ErrProblemReadingRune(err error) error {
|
||||||
|
return erorr.Errorf("rfc8259: JSON parser had a problem — problem reading rune: %w", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
func ErrProblemUnreadingRune(err error, r rune) error {
|
||||||
|
return erorr.Errorf("rfc8259: JSON parser had an internal-error — problem unreading rune %q (%U): %w", r, r, err)
|
||||||
|
}
|
|
@ -0,0 +1,32 @@
|
||||||
|
package rfc8259number
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
|
||||||
|
"sourcecode.social/reiver/go-opt"
|
||||||
|
)
|
||||||
|
|
||||||
|
type Number struct {
|
||||||
|
opt.Optional[string]
|
||||||
|
}
|
||||||
|
|
||||||
|
func Nothing() Number {
|
||||||
|
return Number{opt.Nothing[string]()}
|
||||||
|
}
|
||||||
|
|
||||||
|
func Something(value string) Number {
|
||||||
|
return Number{opt.Something(value)}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (receiver Number) GoString() string {
|
||||||
|
switch receiver {
|
||||||
|
case Nothing():
|
||||||
|
return "rfc8259number.Nothing()"
|
||||||
|
default:
|
||||||
|
value, found := receiver.Get()
|
||||||
|
if !found {
|
||||||
|
return fmt.Sprintf("--INTERNAL-ERROR--")
|
||||||
|
}
|
||||||
|
return fmt.Sprintf("rfc8259number.Something(%#v)", value)
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue