Hi everyone,
@staticmethod
def in_circle_check(obj_type, item, uuid, item_is_array=False):
if obj_type not in ['trees', 'flowers']:
return None
plant = get_plant_with_circles(uuid)
if not plant:
return None
if obj_type == 'trees':
if plant['in_all_tree_types']:
return True
circle_objects = plant['tree_circle']['items']
else:
if plant['in_all_flower_types']:
return True
circle_objects = plant['flower_circle']['items']
if isinstance(circle_objects, list):
if item_is_array:
for item in item:
if item not in circle_objects:
return -1
return True
else:
if item in circle_objects:
return True
else:
return -1
return -1
I try to move the first 3 if statements on the beginning of the block into new methods but that maneuver ends up with raising complexity.
def in_circle_check(obj_type, item, uuid, item_is_array=False):
if obj_type not in ['trees', 'flowers']:
return None
plant = get_plant_with_circles(uuid)
if not plant:
return None
if obj_type == 'trees':
if plant['in_all_tree_types']:
return True
circle_objects = plant['tree_circle']['items']
else:
if plant['in_all_flower_types']:
return True
circle_objects = plant['flower_circle']['items']
if isinstance(circle_objects, list):
if item_is_array:
for item in item:
if item not in circle_objects:
return -1
return True
else:
if item in circle_objects:
return True
else:
return -1
return -1
I try to move the first 3 if statements on the beginning of the block into new methods but that maneuver ends up with raising complexity.
Can anybody help me to learn how to reduce cognitive complexity in code blocks like this?
Kind regards,
Sencer HAMARATYou received this message because you are subscribed to the Google Groups "Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/CACp8TZhBa9EbekcT1ApmzdDRVk2vCb64%3DvvXHrSawO2RJSySpQ%40mail.gmail.com.
No comments:
Post a Comment