Add vmess compatibility test

This commit is contained in:
世界
2022-07-18 18:50:19 +08:00
parent 6b1a68908d
commit 3fb011712b
9 changed files with 319 additions and 32 deletions

View File

@@ -17,12 +17,16 @@ func decodeJSON(decoder *json.Decoder) (any, error) {
case '{':
var object JSONObject
err = object.decodeJSON(decoder)
if err != nil {
return nil, err
}
rawToken, err = decoder.Token()
if err != nil {
return nil, err
} else if rawToken != json.Delim('}') {
return nil, E.New("excepted object end, but got ", rawToken)
}
return object, nil
return &object, nil
case '[':
var array JSONArray[any]
err = array.decodeJSON(decoder)
@@ -35,7 +39,7 @@ func decodeJSON(decoder *json.Decoder) (any, error) {
} else if rawToken != json.Delim(']') {
return nil, E.New("excepted array end, but got ", rawToken)
}
return &array, nil
return array, nil
default:
return nil, E.New("excepted object or array end: ", token)
}