in detection_rules/rule_formatter.py [0:0]
def dump_list(self, v):
"""Dump a list more cleanly."""
if all([isinstance(d, str) for d in v]) and sum(len(d) + 3 for d in v) > 100:
dump = []
for item in v:
if len(item) > (120 - 4 - 3 - 3) and ' ' in item:
dump.append(' """\n{} """'.format(wrap_text(item, block_indent=4, join=True)))
else:
dump.append(' ' * 4 + self.dump_value(item))
return '[\n{},\n]'.format(',\n'.join(dump))
if v and all(isinstance(i, dict) for i in v):
# Compact inline format for lists of dictionaries with proper indentation
retval = "\n" + ' ' * 2 + "[\n"
retval += ",\n".join([' ' * 4 + self.dump_inline_table(u).strip() for u in v])
retval += "\n" + ' ' * 2 + "]\n"
return retval
return self._dump_flat_list(v)