2019-03-24 21:34:50 +00:00
|
|
|
import yaml
|
2019-07-10 07:00:44 +00:00
|
|
|
from yaml.parser import ParserError
|
2019-07-11 02:31:23 +00:00
|
|
|
from yaml.scanner import ScannerError
|
2019-03-24 21:34:50 +00:00
|
|
|
|
2019-05-05 09:45:24 +00:00
|
|
|
|
2019-03-24 21:34:50 +00:00
|
|
|
def load(stream):
|
2019-03-24 21:43:17 +00:00
|
|
|
return yaml.load(stream, Loader=yaml.SafeLoader)
|
2019-03-24 21:34:50 +00:00
|
|
|
|
2019-05-05 09:45:24 +00:00
|
|
|
|
2019-03-24 21:34:50 +00:00
|
|
|
def dump(content, fileobj):
|
|
|
|
yaml.dump(content, fileobj, default_flow_style=False)
|
|
|
|
|
2019-05-05 09:45:24 +00:00
|
|
|
|
2019-07-10 07:00:44 +00:00
|
|
|
def parse(v):
|
2019-03-24 21:34:50 +00:00
|
|
|
"""
|
2019-07-10 07:00:44 +00:00
|
|
|
Parse a yaml-formatted string.
|
2019-03-24 21:34:50 +00:00
|
|
|
"""
|
2019-07-10 07:00:44 +00:00
|
|
|
try:
|
|
|
|
return load(v)
|
2019-07-11 02:31:23 +00:00
|
|
|
except (ParserError, ScannerError):
|
2019-07-10 07:00:44 +00:00
|
|
|
pass
|
2019-03-24 21:34:50 +00:00
|
|
|
return v
|