- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
try:
# Get or create cached encoder/decoder pair atomically
encoder_decoder = cls._encoder_cache.get(struct_cls)
if encoder_decoder is None:
encoder = msgspec.json.Encoder()
decoder = msgspec.json.Decoder(type=struct_cls, dec_hook=_dec_hook)
encoder_decoder = (encoder, decoder)
cls._encoder_cache[struct_cls] = encoder_decoder
cls._decoder_cache[struct_cls] = encoder_decoder
else:
encoder, decoder = encoder_decoder
Follow us!