summaryrefslogtreecommitdiffstats
path: root/rtemsqual/interface.py
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2020-05-12 19:15:30 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2020-05-28 10:38:22 +0200
commit570e2e026c002b293fcc36b10485713e7b4cdabe (patch)
tree7d3b6b9da397bc74a398414cbba212e1c519f408 /rtemsqual/interface.py
parentinterface: Allow defines without a value (diff)
downloadrtems-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.py14
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: