NBT Unmarshaler support

This commit is contained in:
Tnze
2019-07-31 21:00:30 +08:00
parent 4bd9c44f30
commit e385cb77cb
6 changed files with 29 additions and 50 deletions

View File

@ -24,19 +24,17 @@ const (
TagLongArray
)
type DecoderReader = interface {
io.ByteScanner
io.Reader
}
type Decoder struct {
r interface {
io.ByteScanner
io.Reader
}
r DecoderReader
}
func NewDecoder(r io.Reader) *Decoder {
d := new(Decoder)
if br, ok := r.(interface {
io.ByteScanner
io.Reader
}); ok {
if br, ok := r.(DecoderReader); ok {
d.r = br
} else {
d.r = bufio.NewReader(r)