From e9d7aaaa57c524f2ee06e2ec26b2d295a5a18dc2 Mon Sep 17 00:00:00 2001 From: "Hock, Martin" <martin.hock@fst.tu-darmstadt.de> Date: Thu, 2 Mar 2023 11:32:33 +0100 Subject: [PATCH] Rearrange and fix imports (broken through merge)Adjust some Types.Change LegoAssembly.clone() to use properties['label'] --- functions/classes.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/functions/classes.py b/functions/classes.py index 3ed46e7..4e98029 100644 --- a/functions/classes.py +++ b/functions/classes.py @@ -2,10 +2,11 @@ File consists of several classes for the different elements of a device. """ from __future__ import annotations -from enum import Enum, auto import uuid -from typing import List, Dict, Optional import json +import operator +from enum import Enum, auto +from typing import List, Dict, Optional class AggregationLayer(Enum): @@ -195,10 +196,11 @@ class LegoAssembly: def __repr__(self): return f"LegoAssembly {self.properties['label']} [{self.uuid}]" - def clone(self, label: str = None) -> LegoAssembly: + def clone(self, label: Optional[str] = None) -> LegoAssembly: if label is None: - label = self.label - clone = LegoAssembly(label, copy.deepcopy(self.properties), self.layer) + label = self.properties['label'] + clone = LegoAssembly(self.layer, None, self.properties) + clone.properties['label'] = label for component in self.components: clone.add_component(component.clone()) for assembly in self.assemblies: -- GitLab