diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2020-05-12 19:15:30 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2020-05-28 10:38:22 +0200 |
commit | 570e2e026c002b293fcc36b10485713e7b4cdabe (patch) | |
tree | 7d3b6b9da397bc74a398414cbba212e1c519f408 /rtemsqual/interface.py | |
parent | interface: Allow defines without a value (diff) | |
download | rtems-central-570e2e026c002b293fcc36b10485713e7b4cdabe.tar.bz2 |
interface: Allow macros without a value
Break line if too long.
Diffstat (limited to 'rtemsqual/interface.py')
-rw-r--r-- | rtemsqual/interface.py | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/rtemsqual/interface.py b/rtemsqual/interface.py index 45cea8f2..65ffd8b0 100644 --- a/rtemsqual/interface.py +++ b/rtemsqual/interface.py @@ -364,12 +364,18 @@ class Node: name = item["interface-name"] params = [param["name"] for param in item["interface-params"]] param_line = ", ".join(params) - line = f"#define {name}({param_line}) " + line = f"#define {name}({param_line})" if len(line) > 79: param_block = ", \\\n ".join(params) - line = f"#define {name}( \\\n {param_block} \\\n) " - body = self.substitute(" \\\n ".join( - definition.strip("\n").split("\n"))) + line = f"#define {name}( \\\n {param_block} \\\n)" + if not definition: + return line + body_lines = definition.strip("\n").split("\n") + if len(body_lines) == 1 and len(line + body_lines[0]) <= 79: + body = " " + else: + body = " \\\n " + body += self.substitute(" \\\n ".join(body_lines)) return line + body def _get_typedef_definition(self, _item: Item, definition: Any) -> Lines: |