From d43769dc15508eb2230b18dcebbb47d9415972f5 Mon Sep 17 00:00:00 2001 From: YenForYang Date: Fri, 17 Sep 2021 21:42:20 -0500 Subject: [PATCH] bencode: Simplify `(*Decoder).parseListInterface()` (#656) Preserve as much type as possible (it'll be converted to an `interface{}` anyway, but we can return `[]interface{}` instead of `{}interface` here). --- bencode/decode.go | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/bencode/decode.go b/bencode/decode.go index 08d7861c..9c42578a 100644 --- a/bencode/decode.go +++ b/bencode/decode.go @@ -661,18 +661,12 @@ func (d *Decoder) parseDictInterface() interface{} { return dict } -func (d *Decoder) parseListInterface() interface{} { - var list []interface{} - for { - valuei, ok := d.parseValueInterface() - if !ok { - break - } - +func (d *Decoder) parseListInterface() (list []interface{}) { + list = []interface{}{} + valuei, ok := d.parseValueInterface() + for ok { list = append(list, valuei) + valuei, ok = d.parseValueInterface() } - if list == nil { - list = make([]interface{}, 0) - } - return list + return } -- 2.48.1