package sse import "io" type stringWriter interface { io.Writer WriteString(string) (int, error) } type stringWrapper struct { io.Writer } func (w stringWrapper) WriteString(str string) (int, error) { return w.Writer.Write([]byte(str)) } func checkWriter(writer io.Writer) stringWriter { if w, ok := writer.(stringWriter); ok { return w } else { return stringWrapper{writer} } }