| 123456789101112131415161718192021222324252627282930313233343536373839 | package netimport (	"github.com/v2ray/v2ray-core/common/alloc")// Packet is a network packet to be sent to destination.type Packet interface {	Destination() Destination	Chunk() *alloc.Buffer // First chunk of this commnunication	MoreChunks() bool}// NewPacket creates a new Packet with given destination and payload.func NewPacket(dest Destination, firstChunk *alloc.Buffer, moreChunks bool) Packet {	return &packetImpl{		dest:     dest,		data:     firstChunk,		moreData: moreChunks,	}}type packetImpl struct {	dest     Destination	data     *alloc.Buffer	moreData bool}func (packet *packetImpl) Destination() Destination {	return packet.dest}func (packet *packetImpl) Chunk() *alloc.Buffer {	return packet.data}func (packet *packetImpl) MoreChunks() bool {	return packet.moreData}
 |