encoder.py 510 B

1234567891011121314151617181920212223
  1. from enum import Enum
  2. from typing import List
  3. from pydantic import BaseModel
  4. def serialize_base_model_array(l: List[BaseModel]) -> str:
  5. class _BaseModel(BaseModel):
  6. __root__: List[BaseModel]
  7. """
  8. {"__root__": [BaseModel, BaseModel, ...]}
  9. """
  10. return _BaseModel(__root__=l).json()
  11. def serialize_base_model_dict(b: dict) -> str:
  12. class _BaseModel(BaseModel):
  13. __root__: dict
  14. """
  15. {"__root__": {BaseModel}}
  16. """
  17. return _BaseModel(__root__=b).json()