From 81e7caf22e5f295f5d4ed84595f3e046139febbe Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Sat, 15 Dec 2018 15:06:00 +0100 Subject: unexport tokens --- bencode/bdecode.go | 28 ++++++++++++++-------------- tracker/peer.go | 2 +- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/bencode/bdecode.go b/bencode/bdecode.go index 9bd57b9..67f37b1 100644 --- a/bencode/bdecode.go +++ b/bencode/bdecode.go @@ -9,10 +9,10 @@ import ( ) const ( - Dict = 'd' - List = 'l' - Int = 'i' - end = 'e' + tokenDict = 'd' + tokenList = 'l' + tokenInt = 'i' + tokenEnd = 'e' ) type Unmarshaler interface { @@ -38,13 +38,13 @@ func Unmarshal(data []byte, v interface{}) (int, error) { func (d *decodeState) unmarshalField(v reflect.Value) error { switch d.data[d.off] { - case Dict: + case tokenDict: return d.unmarshalDict(v) - case Int: + case tokenInt: return d.unmarshalInt(v) - case List: + case tokenList: return d.unmarshalList(v) - case end: + case tokenEnd: return ErrValue default: return d.unmarshalString(v) @@ -53,14 +53,14 @@ func (d *decodeState) unmarshalField(v reflect.Value) error { } func (d *decodeState) unmarshalDict(v reflect.Value) error { - if d.data[d.off] != Dict { + if d.data[d.off] != tokenDict { return ErrValue } rawStart := d.off d.off++ - for d.data[d.off] != end { + for d.data[d.off] != tokenEnd { key, n := parseString(d.data[d.off:]) d.off += n val := findKey(key, v) @@ -88,12 +88,12 @@ func (d *decodeState) unmarshalDict(v reflect.Value) error { } func (d *decodeState) unmarshalList(v reflect.Value) error { - if d.data[d.off] != List { + if d.data[d.off] != tokenList { return ErrValue } d.off++ - for i := 0; d.data[d.off] != end; i++ { + for i := 0; d.data[d.off] != tokenEnd; i++ { if v.CanSet() { if i >= v.Cap() { newcap := v.Cap() + v.Cap()/2 @@ -173,10 +173,10 @@ func parseString(data []byte) (string, int) { } func parseInt(data []byte) (int64, int) { - if data[0] != Int { + if data[0] != tokenInt { panic("not an int") } - end := bytes.IndexByte(data, end) + end := bytes.IndexByte(data, tokenEnd) i, err := strconv.Atoi(string(data[1:end])) if err != nil { panic(err) diff --git a/tracker/peer.go b/tracker/peer.go index 74fd90c..ab6753b 100644 --- a/tracker/peer.go +++ b/tracker/peer.go @@ -28,7 +28,7 @@ type Peers []Peer func (p *Peers) UnmarshalBencode(b []byte) (int, error) { switch b[0] { - case bencode.List: + case 'l': // XXX bencode.tokenList var tmp []Peer n, err := bencode.Unmarshal(b, &tmp) *p = Peers(tmp) -- cgit v1.2.3