diff options
| author | 2025-04-14 09:43:56 +0200 | |
|---|---|---|
| committer | 2025-04-14 09:43:56 +0200 | |
| commit | 51b9ef5c346f333e558eca38fd954464322f3b7d (patch) | |
| tree | bf5cd0de887a27c1afc66345b1a464921d96e503 /vendor/github.com/bytedance/sonic/internal/encoder/alg | |
| parent | [docs] Remind the user that password resets don't work without restarting. (#... (diff) | |
| download | gotosocial-51b9ef5c346f333e558eca38fd954464322f3b7d.tar.xz | |
[chore]: Bump github.com/gin-contrib/gzip from 1.2.2 to 1.2.3 (#4000)
Bumps [github.com/gin-contrib/gzip](https://github.com/gin-contrib/gzip) from 1.2.2 to 1.2.3.
- [Release notes](https://github.com/gin-contrib/gzip/releases)
- [Changelog](https://github.com/gin-contrib/gzip/blob/master/.goreleaser.yaml)
- [Commits](https://github.com/gin-contrib/gzip/compare/v1.2.2...v1.2.3)
---
updated-dependencies:
- dependency-name: github.com/gin-contrib/gzip
dependency-version: 1.2.3
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Diffstat (limited to 'vendor/github.com/bytedance/sonic/internal/encoder/alg')
4 files changed, 22 insertions, 12 deletions
diff --git a/vendor/github.com/bytedance/sonic/internal/encoder/alg/mapiter.go b/vendor/github.com/bytedance/sonic/internal/encoder/alg/mapiter.go index 5d9956a90..032ae3b8a 100644 --- a/vendor/github.com/bytedance/sonic/internal/encoder/alg/mapiter.go +++ b/vendor/github.com/bytedance/sonic/internal/encoder/alg/mapiter.go @@ -165,19 +165,20 @@ func IteratorNext(p *MapIterator) { p.ki++ } -func IteratorStart(t *rt.GoMapType, m *rt.GoMap, fv uint64) (*MapIterator, error) { +func IteratorStart(t *rt.GoMapType, m unsafe.Pointer, fv uint64) (*MapIterator, error) { it := newIterator() rt.Mapiterinit(t, m, &it.It) + count := rt.Maplen(m) /* check for key-sorting, empty map don't need sorting */ - if m.Count == 0 || (fv & (1<<BitSortMapKeys)) == 0 { + if count == 0 || (fv & (1<<BitSortMapKeys)) == 0 { it.ki = -1 return it, nil } /* pre-allocate space if needed */ - if m.Count > it.kv.Cap { - it.kv = rt.GrowSlice(iteratorPair, it.kv, m.Count) + if count > it.kv.Cap { + it.kv = rt.GrowSlice(iteratorPair, it.kv, count) } /* dump all the key-value pairs */ @@ -189,7 +190,7 @@ func IteratorStart(t *rt.GoMapType, m *rt.GoMap, fv uint64) (*MapIterator, error } /* sort the keys, map with only 1 item don't need sorting */ - if it.ki = 1; m.Count > 1 { + if it.ki = 1; count > 1 { radixQsort(it.data(), 0, maxDepth(it.kv.Len)) } diff --git a/vendor/github.com/bytedance/sonic/internal/encoder/alg/primitives.go b/vendor/github.com/bytedance/sonic/internal/encoder/alg/primitives.go index 63fa01890..e2610fbc8 100644 --- a/vendor/github.com/bytedance/sonic/internal/encoder/alg/primitives.go +++ b/vendor/github.com/bytedance/sonic/internal/encoder/alg/primitives.go @@ -1,12 +1,12 @@ /** * Copyright 2024 ByteDance Inc. - * + * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -19,8 +19,11 @@ package alg import ( "encoding" "encoding/json" + "reflect" + "unsafe" "github.com/bytedance/sonic/internal/encoder/vars" + "github.com/bytedance/sonic/internal/resolver" "github.com/bytedance/sonic/internal/rt" ) @@ -92,4 +95,10 @@ func EncodeTextMarshaler(buf *[]byte, val encoding.TextMarshaler, opt uint64) er return nil } } -
\ No newline at end of file + +func IsZero(val unsafe.Pointer, fv *resolver.FieldMeta) bool { + rv := reflect.NewAt(fv.Type, val).Elem() + b1 := fv.IsZero == nil && rv.IsZero() + b2 := fv.IsZero != nil && fv.IsZero(rv) + return b1 || b2 +} diff --git a/vendor/github.com/bytedance/sonic/internal/encoder/alg/spec.go b/vendor/github.com/bytedance/sonic/internal/encoder/alg/spec.go index bff943626..6f76ac739 100644 --- a/vendor/github.com/bytedance/sonic/internal/encoder/alg/spec.go +++ b/vendor/github.com/bytedance/sonic/internal/encoder/alg/spec.go @@ -1,5 +1,5 @@ -//go:build (amd64 && go1.16 && !go1.24) || (arm64 && go1.20 && !go1.24) -// +build amd64,go1.16,!go1.24 arm64,go1.20,!go1.24 +//go:build (amd64 && go1.16 && !go1.25) || (arm64 && go1.20 && !go1.25) +// +build amd64,go1.16,!go1.25 arm64,go1.20,!go1.25 /** * Copyright 2024 ByteDance Inc. diff --git a/vendor/github.com/bytedance/sonic/internal/encoder/alg/spec_compat.go b/vendor/github.com/bytedance/sonic/internal/encoder/alg/spec_compat.go index c15cbf7d8..cd8369834 100644 --- a/vendor/github.com/bytedance/sonic/internal/encoder/alg/spec_compat.go +++ b/vendor/github.com/bytedance/sonic/internal/encoder/alg/spec_compat.go @@ -1,4 +1,4 @@ -// +build !amd64,!arm64 go1.24 !go1.16 arm64,!go1.20 +// +build !amd64,!arm64 go1.25 !go1.16 arm64,!go1.20 /** * Copyright 2024 ByteDance Inc. |
