in aidial_sdk/utils/merge_chunks.py [0:0]
def merge_lists(target: list, source: list, path: Path) -> list:
is_target_indexed = is_indexed_list(target)
is_source_indexed = is_indexed_list(source)
if len(source) == 0:
return target
if len(target) == 0:
if is_source_indexed:
return merge_indexed_lists(target, source, path)
else:
return copy.deepcopy(source)
if not is_target_indexed and not is_source_indexed:
raise AssertionError(CANNOT_MERGE_NON_INDEXED_LISTS_ERROR_MESSAGE)
assert (
is_target_indexed and is_source_indexed
), CANNOT_MERGE_NON_INDEXED_AND_INDEXED_LISTS_ERROR_MESSAGE
return merge_indexed_lists(target, source, path)