I understand it fine except this bit right at the end:
var _ http.CloseNotifier = &fancyWriter{}
var _ http.Flusher = &fancyWriter{}
var _ http.Hijacker = &fancyWriter{}
var _ io.ReaderFrom = &fancyWriter{}
What's the purpose of this ? According to effective go this just silences the unused imports but I don't think there's a need for that here.
It allows you to make sure fancyWriter implements all those interfaces, so that any future refactoring that breaks compatibility breaks at compile time.
You know how Go makes interfaces concordance implicit ? Whatever has a Read() method is a io.Reader without asking for it ? This explicitly tells the compiler (and other developers) the same thing.
They are static assertions that fancyWriter implements all those interfaces. They are compiled away to nothing but provide a kind of test of correctness.
I understand it fine except this bit right at the end:
What's the purpose of this ? According to effective go this just silences the unused imports but I don't think there's a need for that here.