func Reset(m Message) {
	if mr, ok := m.(interface{ Reset() }); ok && hasProtoMethods {
		mr.Reset()
		return
	}
	resetMessage(m.ProtoReflect())
}
Reset clears every field in the message.
The resulting message shares no observable memory with its previous state
other than the memory for the message itself.
package proto
import (
	"fmt"
	"google.golang.org/protobuf/reflect/protoreflect"
)