When compiling a CompilableCodec, the compiled version was cached under the generic type of the codec, there was a issue when the compliable wrapped object codecs or codecs that are non-dependent on their generic definition to represent what they deserialize, causing user-defined types to be deserialized incorrectly.
This PR fixes that by caching the compiled codecs based off of both the user-specified type and the generic by using a combined hashcode.
Summary
When compiling a
CompilableCodec
, the compiled version was cached under the generic type of the codec, there was a issue when the compliable wrapped object codecs or codecs that are non-dependent on their generic definition to represent what they deserialize, causing user-defined types to be deserialized incorrectly.This PR fixes that by caching the compiled codecs based off of both the user-specified type and the generic by using a combined hashcode.
Closes #37