From 3e7cdb405e4f347bc1e93ed159e7bd9828e7d15b Mon Sep 17 00:00:00 2001 From: Charles Iliya Krempeaux Date: Mon, 25 Sep 2023 11:35:13 +0900 Subject: [PATCH] .MarshalJSON() --- optional_marshaljson.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/optional_marshaljson.go b/optional_marshaljson.go index 4d144cb..c2c8111 100644 --- a/optional_marshaljson.go +++ b/optional_marshaljson.go @@ -11,7 +11,7 @@ var _ json.Marshaler = Nothing[string]() // MarshalJSON makes it so json.Marshaler is implemented. func (receiver Optional[T]) MarshalJSON() ([]byte, error) { switch interface{}(receiver.value).(type) { - case bool, string: + case bool, string, json.Marshaler: // these are OK. default: return nil, fmt.Errorf("cannot marshal something of type %T into JSON because parameterized type is ‘%T’ rather than ‘bool’ or ‘string’", receiver, receiver.value)