@@ -433,6 +433,14 @@ def read_json(self:Path, encoding=None, errors=None):
433433 "Same as `read_text` followed by `loads`"
434434 return loads (self .read_text (encoding = encoding , errors = errors ))
435435
436+ # %% ../nbs/03_xtras.ipynb #6c5f7de3
437+ @patch
438+ def read_yml (self :Path , encoding = None , errors = None ):
439+ "Same as `read_text` followed by `yaml.safe_load`"
440+ try : import yaml
441+ except ImportError : raise ImportError ("pip install pyyaml" )
442+ return yaml .safe_load (self .read_text (encoding = encoding , errors = errors ))
443+
436444# %% ../nbs/03_xtras.ipynb #d6d8d893
437445@patch
438446def mk_write (self :Path , data , encoding = None , errors = None , mode = 511 , uid = - 1 , gid = - 1 ):
@@ -447,6 +455,14 @@ def write_json(self:Path, data, encoding=None, errors=None, mode=511, uid=-1, gi
447455 "Same as `dumps`followed by `mk_write`"
448456 self .mk_write (dumps (data ,** kw ),encoding ,errors ,mode ,uid ,gid )
449457
458+ # %% ../nbs/03_xtras.ipynb #0290ae06
459+ @patch
460+ def write_yml (self :Path , data , encoding = None , errors = None , mode = 511 , uid = - 1 , gid = - 1 , ** kw ):
461+ "Same as `yaml.dump` followed by `mk_write`"
462+ try : import yaml
463+ except ImportError : raise ImportError ("pip install pyyaml" )
464+ self .mk_write (yaml .dump (data , ** kw ), encoding , errors , mode , uid , gid )
465+
450466# %% ../nbs/03_xtras.ipynb #9fc9965f
451467@patch
452468def relpath (self :Path , start = None ):
0 commit comments