Reduce indentation in ListToString
This commit is contained in:
parent
35ebac1cac
commit
93d6fb5d88
|
@ -1,29 +1,30 @@
|
|||
if(NOT DEFINED LIST_TO_STRING_LOADED)
|
||||
|
||||
function(list_to_string separator prefix suffix input_list output_string_var)
|
||||
set(res "")
|
||||
# get list length
|
||||
list(LENGTH input_list list_length)
|
||||
# if the list has 0 or 1 element, there is no need to loop over
|
||||
if(list_length LESS 2)
|
||||
set(res "${prefix}${input_list}${suffix}")
|
||||
else()
|
||||
math(EXPR last_element_index "${list_length} - 1")
|
||||
foreach(index RANGE ${last_element_index})
|
||||
# get current item_value
|
||||
list(GET input_list ${index} item_value)
|
||||
if(NOT item_value STREQUAL "")
|
||||
# .. and append non-empty value to output string
|
||||
set(res "${res}${prefix}${item_value}${suffix}")
|
||||
# append separator if current element is NOT the last one.
|
||||
if(NOT index EQUAL last_element_index)
|
||||
set(res "${res}${separator}")
|
||||
endif()
|
||||
endif()
|
||||
endforeach()
|
||||
endif()
|
||||
set(${output_string_var} "${res}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
set(LIST_TO_STRING_LOADED YES)
|
||||
# prevent multiple inclusion
|
||||
if(DEFINED LIST_TO_STRING_LOADED)
|
||||
return()
|
||||
endif()
|
||||
set(LIST_TO_STRING_LOADED ON)
|
||||
|
||||
function(list_to_string separator prefix suffix input_list output_string_var)
|
||||
set(res "")
|
||||
# get list length
|
||||
list(LENGTH input_list list_length)
|
||||
# if the list has 0 or 1 element, there is no need to loop over
|
||||
if(list_length LESS 2)
|
||||
set(res "${prefix}${input_list}${suffix}")
|
||||
else()
|
||||
math(EXPR last_element_index "${list_length} - 1")
|
||||
foreach(index RANGE ${last_element_index})
|
||||
# get current item_value
|
||||
list(GET input_list ${index} item_value)
|
||||
if(NOT item_value STREQUAL "")
|
||||
# .. and append non-empty value to output string
|
||||
set(res "${res}${prefix}${item_value}${suffix}")
|
||||
# append separator if current element is NOT the last one.
|
||||
if(NOT index EQUAL last_element_index)
|
||||
set(res "${res}${separator}")
|
||||
endif()
|
||||
endif()
|
||||
endforeach()
|
||||
endif()
|
||||
set(${output_string_var} "${res}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
|
Loading…
Reference in New Issue