func (resp *Response) SwapValue(value []byte) []byte {
	v := resp.value
	resp.value = value
	return v
}
SwapValue swaps the given value with the response's value.

It is forbidden accessing the swapped value after the call.
package tlv
import (
	"bufio"
	"fmt"
	"sync"
)
type Response struct {
	value []byte
	sizeBuf [4]byte
}
func (resp *Response) Reset() {
	resp.value = resp.value[:0]
}
func (resp *Response) Write(p []byte) (int, error) {
	resp.Append(p)
	return len(p), nil
}
func (resp *Response) Append(p []byte) {
	resp.value = append(resp.value, p...)
}