Source code for mqt.ionshuttler.multi_shuttler.circuit_types
# Copyright (c) 2023 - 2026 Chair for Design Automation, TUM
# All rights reserved.
#
# SPDX-License-Identifier: MIT
#
# Licensed under the MIT License
from __future__ import annotations
from dataclasses import dataclass
from typing import TYPE_CHECKING
if TYPE_CHECKING:
from mqt.ionshuttler.partitioning import GateInfo
GateRef = int | tuple[int, ...]
[docs]
@dataclass(slots=True)
class ParsedCircuit:
"""Circuit representation with stable gate ids and metadata."""
sequence: list[int]
gate_info: dict[int, GateInfo]
@property
def qubit_sequence(self) -> list[tuple[int, ...]]:
"""Return the legacy qubit-tuple view of the circuit."""
return [self.gate_info[gate_id].qubits for gate_id in self.sequence]