@contextmanagerdefopen(self,mode:str="r",**open_kwargs)->Iterator[Any]:"""Open the file and return a file-like object. Default to text mode"""withsuper().open(mode=mode,**open_kwargs)asstream:yieldstream
read_text
read_text(**open_kwargs)
Return file contents as text.
**open_kwargs : Any
Extra keyword arguments forwarded to open() (e.g. encoding).
defread_text(self,**open_kwargs):"""Return file contents as text. **open_kwargs : Any Extra keyword arguments forwarded to ``open()`` (e.g. encoding). """withself.open(**open_kwargs)asstream:returnstream.read()
defsave(self,destination:str,client_config:Optional[dict]=None):"""Writes it's content to destination"""destination=stringify_path(destination)client:Client=self._catalog.get_client(destination,**(client_configor{}))withclient.fs.open(destination,mode="w")asf:f.write(self.read_text())