22 """This module defines YAML I/O for key lsst.daf.base classes.""" 30 from .dateTime
import DateTime
31 from .propertyContainer
import PropertyList, getPropertyListState, setPropertyListState, \
32 getPropertySetState, setPropertySetState, PropertySet
37 loaderList = [yaml.Loader, yaml.CLoader]
39 loaderList.append(yaml.FullLoader)
40 except AttributeError:
43 loaderList.append(yaml.UnsafeLoader)
44 except AttributeError:
52 """Represent an lsst.daf.base.DateTime (as ISO8601-formatted string in TAI) 54 return dumper.represent_scalar(
'lsst.daf.base.DateTime',
55 data.toString(DateTime.TAI))
59 yaml.add_representer(DateTime, dt_representer)
63 """Represent an lsst.daf.base.PropertyList as an ordered sequence of 64 name/type/value/comment lists)""" 67 return dumper.represent_sequence(
'lsst.daf.base.PropertyList', result,
72 yaml.add_representer(PropertyList, pl_representer)
76 """Represent an lsst.daf.base.PropertySet as a mapping from names to 80 return dumper.represent_sequence(
'lsst.daf.base.PropertySet', result,
85 yaml.add_representer(PropertySet, ps_representer)
93 """Construct an lsst.daf.base.DateTime from an ISO8601-formatted string in 95 dt = loader.construct_scalar(node)
96 return DateTime(str(dt), DateTime.TAI)
100 """Construct an lsst.daf.base.PropertyList from a YAML pickle-like structure.""" 103 state = loader.construct_sequence(node, deep=
True)
108 """Construct an lsst.daf.base.PropertyList from a YAML pickle-like structure.""" 111 state = loader.construct_sequence(node, deep=
True)
116 for loader
in loaderList:
117 yaml.add_constructor(
'lsst.daf.base.PropertyList', pl_constructor, Loader=loader)
118 yaml.add_constructor(
'lsst.daf.base.PropertySet', ps_constructor, Loader=loader)
119 yaml.add_constructor(
'lsst.daf.base.DateTime', dt_constructor, Loader=loader)
def pl_representer(dumper, data)
def dt_representer(dumper, data)
def getPropertySetState(container, asLists=False)
def setPropertyListState(container, state)
def getPropertyListState(container, asLists=False)
def setPropertySetState(container, state)
def ps_representer(dumper, data)
Class for storing generic metadata.