Support ordered dictionnary

Now possible to create ordered dictionnary using 'to_dict' function with
the ordered parameter.
This commit is contained in:
jfgauvin
2014-10-27 10:59:07 -04:00
parent f9fea43828
commit 4f706c8b05
3 changed files with 31 additions and 24 deletions

View File

@@ -214,11 +214,11 @@ cdef class {{node.module_name}}_Reader(_DynamicStructReader):
return self._get_{{field.name}}()
{%- endfor %}
def to_dict(self, verbose=False):
def to_dict(self, verbose=False, ordered=False):
ret = {
{% for field in node.struct.fields %}
{% if field.discriminantValue == 65535 %}
'{{field.name}}': _to_dict(self.{{field.name}}, verbose),
'{{field.name}}': _to_dict(self.{{field.name}}, verbose, ordered),
{% endif %}
{%- endfor %}
}
@@ -246,11 +246,11 @@ cdef class {{node.module_name}}_Builder(_DynamicStructBuilder):
self._set_{{field.name}}(value)
{%- endfor %}
def to_dict(self, verbose=False):
def to_dict(self, verbose=False, ordered=False):
ret = {
{% for field in node.struct.fields %}
{% if field.discriminantValue == 65535 %}
'{{field.name}}': _to_dict(self.{{field.name}}, verbose),
'{{field.name}}': _to_dict(self.{{field.name}}, verbose, ordered),
{% endif %}
{%- endfor %}
}