Files
go-mc/nbt/nbt.go
2019-07-31 17:31:16 +08:00

46 lines
592 B
Go

// Package nbt implement the Named Binary Tag format of Minecraft.
// It provides api like encoding/xml package.
package nbt
import (
"bufio"
"io"
)
//Tag type IDs
const (
TagEnd byte = iota
TagByte
TagShort
TagInt
TagLong
TagFloat
TagDouble
TagByteArray
TagString
TagList
TagCompound
TagIntArray
TagLongArray
)
type Decoder struct {
r interface {
io.ByteScanner
io.Reader
}
}
func NewDecoder(r io.Reader) *Decoder {
d := new(Decoder)
if br, ok := r.(interface {
io.ByteScanner
io.Reader
}); ok {
d.r = br
} else {
d.r = bufio.NewReader(r)
}
return d
}