From 8e97698b854b4b9ecbef6ad96747e7660cb4539b Mon Sep 17 00:00:00 2001 From: RunasSudo Date: Wed, 14 May 2025 23:32:44 +1000 Subject: [PATCH] Allow pages and blocks to contain arguments --- htmlcc/emitter/__init__.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/htmlcc/emitter/__init__.py b/htmlcc/emitter/__init__.py index 6db4364..3a16a25 100644 --- a/htmlcc/emitter/__init__.py +++ b/htmlcc/emitter/__init__.py @@ -58,7 +58,12 @@ class Emitter: def start_block(self, block_name: str) -> None: """Called at {% block ... %}""" - self.emit('void ' + block_name + '(void) {') + if block_name.endswith(')'): + # Block contains arguments + self.emit('void ' + block_name + ' {') + else: + # Void arguments + self.emit('void ' + block_name + '(void) {') def end_block(self) -> None: """Called at {% endblock %}""" @@ -68,7 +73,12 @@ class Emitter: def start_page(self, page_name: str) -> None: """Called at {% page ... %}""" - self.emit('void ' + page_name + '(void) {') + if page_name.endswith(')'): + # Page contains arguments + self.emit('void ' + page_name + ' {') + else: + # Void arguments + self.emit('void ' + page_name + '(void) {') def end_page(self) -> None: """Called at {% endpage %}"""