From 0d7bbb34f0c20e08a1dd824f02f95e69d7031274 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sybren=20A=2E=20St=C3=BCvel?= Date: Wed, 28 Feb 2018 11:17:27 +0100 Subject: [PATCH] Reduced cyclomatic complexity of BlockUsage.__init__() --- blender_asset_tracer/tracer/result.py | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/blender_asset_tracer/tracer/result.py b/blender_asset_tracer/tracer/result.py index 7dc4129..ba9eab1 100644 --- a/blender_asset_tracer/tracer/result.py +++ b/blender_asset_tracer/tracer/result.py @@ -34,13 +34,7 @@ class BlockUsage: if block_name: self.block_name = block_name else: - try: - self.block_name = block[b'id', b'name'] - except KeyError: - try: - self.block_name = block[b'name'] - except KeyError: - self.block_name = b'-unnamed-' + self.block_name = self.guess_block_name(block) assert isinstance(block, blendfile.BlendFileBlock) assert isinstance(asset_path, (bytes, bpathlib.BlendPath)), \ @@ -65,6 +59,18 @@ class BlockUsage: self.path_dir_field = path_dir_field self.path_base_field = path_base_field + @staticmethod + def guess_block_name(block: blendfile.BlendFileBlock) -> bytes: + try: + return block[b'id', b'name'] + except KeyError: + pass + try: + return block[b'name'] + except KeyError: + pass + return b'-unnamed-' + def __repr__(self): return '' % ( self.block_name, self.block.dna_type_name,