func (i *LinuxDmabuf) Destroy() error {
	defer i.Context().Unregister(i)
	const opcode = 0
	const rLen = 8
	r := make([]byte, rLen)
	l := 0
	client.PutUint32(r[l:4], i.ID())
	l += 4
	client.PutUint32(r[l:l+4], uint32(rLen<<16|opcode&0x0000ffff))
	l += 4
	err := i.Context().WriteMsg(r, nil)
	return err
}
Destroy : unbind the factory

Objects created through this interface, especially wl_buffers, will
remain valid.
package linux_dmabuf
import (
	"reflect"
	"github.com/rajveermalviya/go-wayland/wayland/client"
	"golang.org/x/sys/unix"
)
type LinuxDmabuf struct {
	client.BaseProxy
	formatHandlers   []LinuxDmabufFormatHandlerFunc
	modifierHandlers []LinuxDmabufModifierHandlerFunc
}
func NewLinuxDmabuf(ctx *client.Context) *LinuxDmabuf {
	zwpLinuxDmabufV1 := &LinuxDmabuf{}
	ctx.Register(zwpLinuxDmabufV1)
	return zwpLinuxDmabufV1
}