summaryrefslogtreecommitdiff
path: root/vendor/github.com/bytedance/sonic/internal/resolver/resolver.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/bytedance/sonic/internal/resolver/resolver.go')
-rw-r--r--vendor/github.com/bytedance/sonic/internal/resolver/resolver.go8
1 files changed, 8 insertions, 0 deletions
diff --git a/vendor/github.com/bytedance/sonic/internal/resolver/resolver.go b/vendor/github.com/bytedance/sonic/internal/resolver/resolver.go
index 1c30ad113..4303c6744 100644
--- a/vendor/github.com/bytedance/sonic/internal/resolver/resolver.go
+++ b/vendor/github.com/bytedance/sonic/internal/resolver/resolver.go
@@ -21,6 +21,7 @@ import (
"reflect"
"strings"
"sync"
+ _ "unsafe"
)
type FieldOpts int
@@ -216,3 +217,10 @@ func ResolveStruct(vt reflect.Type) []FieldMeta {
fieldCache[vt] = fm
return fm
}
+
+func handleOmitZero(fv StdField, fm *FieldMeta) {
+ if fv.omitZero {
+ fm.Opts |= F_omitzero
+ fm.IsZero = fv.isZero
+ }
+}