base.py 454 B

1234567891011121314151617181920
  1. # Copyright (c) Alibaba, Inc. and its affiliates.
  2. from abc import ABCMeta, abstractmethod
  3. class FormatHandler(metaclass=ABCMeta):
  4. # if `text_format` is True, file
  5. # should use text mode otherwise binary mode
  6. text_mode = True
  7. @abstractmethod
  8. def load(self, file, **kwargs):
  9. pass
  10. @abstractmethod
  11. def dump(self, obj, file, **kwargs):
  12. pass
  13. @abstractmethod
  14. def dumps(self, obj, **kwargs):
  15. pass