From a55aa06164934f1a3e967bd96122edf43a97d150 Mon Sep 17 00:00:00 2001 From: xi Date: Sat, 22 Apr 2006 21:08:32 +0000 Subject: [PATCH] Sort object attributes. git-svn-id: http://svn.pyyaml.org/pyyaml/trunk@148 18f92427-320e-0410-9341-c67f048884a3 --- lib/yaml/representer.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lib/yaml/representer.py b/lib/yaml/representer.py index 236487e..af02c93 100644 --- a/lib/yaml/representer.py +++ b/lib/yaml/representer.py @@ -241,6 +241,9 @@ class SafeRepresenter(BaseRepresenter): state = data.__getstate__() else: state = data.__dict__.copy() + if isinstance(state, dict): + state = state.items() + state.sort() return self.represent_mapping(tag, state, flow_style=flow_style) def represent_undefined(self, data): @@ -372,6 +375,8 @@ class Representer(SafeRepresenter): else: state = data.__dict__ if args is None and isinstance(state, dict): + state = state.items() + state.sort() return self.represent_mapping( u'tag:yaml.org,2002:python/object:'+class_name, state) if isinstance(state, dict) and not state: @@ -430,6 +435,8 @@ class Representer(SafeRepresenter): function_name = u'%s.%s' % (function.__module__, function.__name__) if not args and not listitems and not dictitems \ and isinstance(state, dict) and newobj: + state = state.items() + state.sort() return self.represent_mapping( u'tag:yaml.org,2002:python/object:'+function_name, state) if not listitems and not dictitems \ -- 2.11.4.GIT