config_json.go 466 B

1234567891011121314151617181920212223
  1. // +build json
  2. package internal
  3. import (
  4. "encoding/json"
  5. "github.com/v2ray/v2ray-core/common/serial"
  6. )
  7. func (this *CacheConfig) UnmarshalJSON(data []byte) error {
  8. var strlist serial.StringLiteralList
  9. if err := json.Unmarshal(data, strlist); err != nil {
  10. return err
  11. }
  12. config := &CacheConfig{
  13. TrustedTags: make(map[serial.StringLiteral]bool, strlist.Len()),
  14. }
  15. for _, str := range strlist {
  16. config.TrustedTags[str.TrimSpace()] = true
  17. }
  18. return nil
  19. }