Allow pages and blocks to contain arguments

This commit is contained in:
RunasSudo 2025-05-14 23:32:44 +10:00
parent 87a7cfb90f
commit 8e97698b85
Signed by: RunasSudo
GPG Key ID: 7234E476BF21C61A

View File

@ -58,7 +58,12 @@ class Emitter:
def start_block(self, block_name: str) -> None: def start_block(self, block_name: str) -> None:
"""Called at {% block ... %}""" """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: def end_block(self) -> None:
"""Called at {% endblock %}""" """Called at {% endblock %}"""
@ -68,7 +73,12 @@ class Emitter:
def start_page(self, page_name: str) -> None: def start_page(self, page_name: str) -> None:
"""Called at {% page ... %}""" """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: def end_page(self) -> None:
"""Called at {% endpage %}""" """Called at {% endpage %}"""