From 9397dcf089af218080b182b9ec2f460d66a3f075 Mon Sep 17 00:00:00 2001 From: Yotam Nachum Date: Sat, 9 Nov 2019 22:17:37 +0200 Subject: Add a Gemini Error struct that contain status --- gemini.go | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/gemini.go b/gemini.go index 5ebaa6a..14eb048 100644 --- a/gemini.go +++ b/gemini.go @@ -1,5 +1,7 @@ package gemini +import "fmt" + // Gemini status codes as defined in the Gemini spec Appendix 1. const ( StatusInput = 10 @@ -35,3 +37,16 @@ const ( func SimplifyStatus(status int) int { return (status / 10) * 10 } + +type Error struct { + Err error + Status int +} + +func (e Error) Error() string { + return fmt.Sprintf("Status %d: %v", e.Status, e.Err) +} + +func (e Error) Unwrap() error { + return e.Err +} -- cgit v1.2.3