From b1ac739691b30286ee9f1d74f79006d27007d38b Mon Sep 17 00:00:00 2001 From: Guy Puts Date: Thu, 3 Oct 2024 11:56:53 +0200 Subject: [PATCH] Catch empty qubit declaration in writer --- opensquirrel/writer/writer.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/opensquirrel/writer/writer.py b/opensquirrel/writer/writer.py index ca72e26..b5686a9 100644 --- a/opensquirrel/writer/writer.py +++ b/opensquirrel/writer/writer.py @@ -13,10 +13,11 @@ def __init__(self, register_manager: RegisterManager) -> None: self.register_manager = register_manager qubit_register_size = self.register_manager.get_qubit_register_size() qubit_register_name = self.register_manager.get_qubit_register_name() + bit_register_size = self.register_manager.get_bit_register_size() bit_register_name = self.register_manager.get_bit_register_name() - self.output = "version 3.0\n\n{}\n{}\n".format( - f"qubit[{qubit_register_size}] {qubit_register_name}", + self.output = "version 3.0\n".format( + "\n{}\n{}\n"+f"qubit[{qubit_register_size}] {qubit_register_name}" if qubit_register_size > 0 else "", f"bit[{bit_register_size}] {bit_register_name}\n" if bit_register_size > 0 else "", ) @@ -71,7 +72,6 @@ def visit_comment(self, comment: Comment) -> None: def circuit_to_string(circuit: Circuit) -> str: writer_impl = _WriterImpl(circuit.register_manager) - circuit.ir.accept(writer_impl) return writer_impl.output.rstrip() + "\n" # remove all trailing lines and leave only one