From c5f2e43f8a7a7413185c252cc7f2c02b768cb6df Mon Sep 17 00:00:00 2001 From: Adrien Suau Date: Wed, 7 Aug 2024 14:49:36 +0200 Subject: [PATCH] Merge duplicated data-structure (#293) Fixes #292 by merging duplicated data-structure where possible. The `BlockDimension` data-structure is harder to merge because it requires `TemplateSide` and merging that in `tqec.position.Direction3D` introduces an import cycle. --- src/tqec/block/block.py | 9 +-------- src/tqec/position.py | 2 +- 2 files changed, 2 insertions(+), 9 deletions(-) diff --git a/src/tqec/block/block.py b/src/tqec/block/block.py index 95f226b2d..88e80981c 100644 --- a/src/tqec/block/block.py +++ b/src/tqec/block/block.py @@ -14,19 +14,12 @@ from tqec.exceptions import TQECException from tqec.plaquette.library.empty import empty_square_plaquette from tqec.plaquette.plaquette import Plaquette, Plaquettes +from tqec.position import Position3D from tqec.templates.constructions.qubit import ComposedTemplateWithSides from tqec.templates.scale import LinearFunction, round_or_fail from typing_extensions import override -@dataclass -class Position3D: - # TODO: merge with data-structures in from #285 - x: int - y: int - z: int - - @dataclass class ComputationBlock(ABC): """An abstract base class providing the necessary interface to implement a block. diff --git a/src/tqec/position.py b/src/tqec/position.py index 609436365..adae89f34 100644 --- a/src/tqec/position.py +++ b/src/tqec/position.py @@ -1,6 +1,6 @@ import typing as ty +from dataclasses import astuple, dataclass from enum import Enum -from dataclasses import dataclass, astuple from tqec.exceptions import TQECException