@@ -1,11 +1,8 @@
package jsoniter
import (
- "encoding"
- "encoding/json"
"fmt"
"reflect"
- "time"
"unsafe"
"github.com/v2pro/plz/reflect2"
)
@@ -78,7 +78,7 @@ func (decoder *sliceDecoder) doDecode(ptr unsafe.Pointer, iter *Iterator) {
}
c = iter.nextToken()
if c == ']' {
- sliceType.Set(ptr, sliceType.UnsafeNew())
+ sliceType.UnsafeSet(ptr, sliceType.UnsafeMakeSlice(0, 0))
return
iter.unreadByte()
@@ -325,27 +325,27 @@ func structFields1To11() {
Field9 string
})(nil),
(*struct {
- Field1 string
- Field2 string
- Field3 string
- Field4 string
- Field5 string
- Field6 string
- Field7 string
- Field8 string
- Field9 string
+ Field1 string
+ Field2 string
+ Field3 string
+ Field4 string
+ Field5 string
+ Field6 string
+ Field7 string
+ Field8 string
+ Field9 string
Field10 string
Field11 string
@@ -10,5 +10,8 @@ func init() {
unmarshalCases = append(unmarshalCases, unmarshalCase{
ptr: (*[]string)(nil),
input: "null",
+ }, unmarshalCase{
+ ptr: (*[]string)(nil),
+ input: "[]",
})