def ordered_load(stream, Loader=yaml.Loader, object_pairs_hook=OrderedDict):
""" Wrapper function to assert ordered loading of yaml file """
class OrderedLoader(Loader):
pass
def construct_mapping(loader, node):
loader.flatten_mapping(node)
return object_pairs_hook(loader.construct_pairs(node))
OrderedLoader.add_constructor(
yaml.resolver.BaseResolver.DEFAULT_MAPPING_TAG,
construct_mapping)
return yaml.load(stream, OrderedLoader)
# Represent OrderedDict as normal yaml when dumping to file or rosbag
评论列表
文章目录