You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com> |
3 years ago | |
|---|---|---|
| .. | ||
| internal/golang/encoding/json | 3 years ago | |
| CONTRIBUTING.md | 3 years ago | |
| LICENSE | 3 years ago | |
| Makefile | 3 years ago | |
| OWNERS | 3 years ago | |
| README.md | 3 years ago | |
| SECURITY.md | 3 years ago | |
| SECURITY_CONTACTS | 3 years ago | |
| code-of-conduct.md | 3 years ago | |
| doc.go | 3 years ago | |
| json.go | 3 years ago | |
README.md
sigs.k8s.io/json
Introduction
This library is a subproject of sig-api-machinery.
It provides case-sensitive, integer-preserving JSON unmarshaling functions based on encoding/json Unmarshal().
Compatibility
The UnmarshalCaseSensitivePreserveInts() function behaves like encoding/json#Unmarshal() with the following differences:
- JSON object keys are treated case-sensitively. Object keys must exactly match json tag names (for tagged struct fields) or struct field names (for untagged struct fields).
- JSON integers are unmarshaled into
interface{}fields as anint64instead of afloat64when possible, falling back tofloat64on any parse or overflow error. - Syntax errors do not return an
encoding/json*SyntaxErrorerror. Instead, they return an error which can be passed toSyntaxErrorOffset()to obtain an offset.
Additional capabilities
The UnmarshalStrict() function decodes identically to UnmarshalCaseSensitivePreserveInts(),
and also returns non-fatal strict errors encountered while decoding:
- Duplicate fields encountered
- Unknown fields encountered
Community, discussion, contribution, and support
You can reach the maintainers of this project via the sig-api-machinery mailing list / channels.
Code of conduct
Participation in the Kubernetes community is governed by the Kubernetes Code of Conduct.