Make j2y more resilient to differently-nested JSON input
This commit is contained in:
parent
1ac1dee58c
commit
b24f37349a
1 changed files with 6 additions and 3 deletions
|
@ -1,17 +1,20 @@
|
|||
#!/usr/bin/env python3
|
||||
|
||||
from yaml import dump
|
||||
|
||||
try:
|
||||
from yaml import CDumper as Dumper
|
||||
except ImportError:
|
||||
from yaml import Dumper
|
||||
|
||||
from collections.abc import Sized
|
||||
import json, re, sys
|
||||
|
||||
def dict_representer(dumper, d):
|
||||
node = dumper.represent_dict(d)
|
||||
# Don't use YAML flow style for large dicts, because the flow style output
|
||||
# only really looks good with a very small number of keys.
|
||||
if len(d) > 5 or sum(len(v) for v in d.values()) > 30:
|
||||
if len(d) > 5 or sum(len(v) for v in d.values() if isinstance(v, Sized)) > 30:
|
||||
node.flow_style = False
|
||||
return node
|
||||
Dumper.add_representer(dict, dict_representer)
|
||||
|
|
Loading…
Reference in a new issue