| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Specifically, types that there are special edge-cases for
…marshalling # Conflicts: # deepobject.go # deepobject_test.go
Remove nullable.Nullable deep object support (moved to separate repo). Move TextUnmarshaler check into case reflect.Struct after the legacy Date/time.Time handlers, so it catches types like uuid.UUID without intercepting time.Time date-only fallback parsing. Add early returns to the Date and time.Time blocks which previously fell through. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
This is an old PR, sorry for getting to it after such a long time. I'm going to edit your PR to remove the nullable stuff, since it's no longer relevant, and resolve the conflicts and clean up the rest. This will amount to only adding the marshaler path. |
Sorry, something went wrong.
|
Oh, bummer, the repo is archived, I can't do that. |
Sorry, something went wrong.
|
Hi, thank you for getting to this - apologies, I'd archived all my non-active public repos. I've unarchived it now |
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
Fixes #44.
This adjusts deep object unmarshalling to support types that implement encoding.TextUnmarshaler (which fixes the issue with with unmarshalling uuid.UUID, and is an interface that is commonly implemented by other types). I'm aware that the Binder interface exists however most types from common libraries don't/won't implement it.
It also adjust deep object marshalling to support nil types, marshalling them as field=null rather than field=.
Finally, it adds custom unmarshalling for the nullable.Nullable type. I'm not 100% happy with how I've done this, with the nullableLike interface, however because nullable.Nullable is generic it's tricky to use casting/reflection to determine the type.