mani_skill.utils.io_utils ========================= .. py:module:: mani_skill.utils.io_utils Classes ------- .. autoapisummary:: mani_skill.utils.io_utils.CustomJsonEncoder Functions --------- .. autoapisummary:: mani_skill.utils.io_utils.dump_json mani_skill.utils.io_utils.load_json mani_skill.utils.io_utils.write_txt Module Contents --------------- .. py:class:: CustomJsonEncoder(*, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, sort_keys=False, indent=None, separators=None, default=None) Bases: :py:obj:`json.JSONEncoder` Custom json encoder to support more types, like numpy and Path. .. py:method:: default(obj) Implement this method in a subclass such that it returns a serializable object for ``o``, or calls the base implementation (to raise a ``TypeError``). For example, to support arbitrary iterators, you could implement default like this:: def default(self, o): try: iterable = iter(o) except TypeError: pass else: return list(iterable) # Let the base class default method raise the TypeError return JSONEncoder.default(self, o) .. py:function:: dump_json(filename, obj, encoder_cls=CustomJsonEncoder, **kwargs) .. py:function:: load_json(filename) .. py:function:: write_txt(filename, content)