diff options
author | Alexis Jeandet <alexis.jeandet@member.fsf.org> | 2017-08-29 11:20:25 +0200 |
---|---|---|
committer | Alexis Jeandet <alexis.jeandet@member.fsf.org> | 2017-09-18 22:21:22 +0200 |
commit | 7549a39a174125f46098543413c5ac77ea08c494 (patch) | |
tree | aa2aafa382b8938ff13a86ec1ebecb6d5520f787 /mesonbuild/mesonlib.py | |
parent | 9c834a4ecddfa6ba38249be501d0ad1b481e48b1 (diff) | |
download | meson-7549a39a174125f46098543413c5ac77ea08c494.zip meson-7549a39a174125f46098543413c5ac77ea08c494.tar.gz meson-7549a39a174125f46098543413c5ac77ea08c494.tar.bz2 |
Introduction of listify method. Test on build.py module to see benefits.
Signed-off-by: Alexis Jeandet <alexis.jeandet@member.fsf.org>
Diffstat (limited to 'mesonbuild/mesonlib.py')
-rw-r--r-- | mesonbuild/mesonlib.py | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/mesonbuild/mesonlib.py b/mesonbuild/mesonlib.py index d03e5a2..1268b00 100644 --- a/mesonbuild/mesonlib.py +++ b/mesonbuild/mesonlib.py @@ -473,6 +473,17 @@ def replace_if_different(dst, dst_tmp): else: os.unlink(dst_tmp) + +def listify(*args): + ''' + Returns a list with all args embedded in a list if they are not of type list. + This function preserve order. + ''' + if len(args) == 1: # Special case with one single arg + return args[0] if type(args[0]) is list else [args[0]] + return [item if type(item) is list else [item] for item in args] + + def typeslistify(item, types): ''' Ensure that type(@item) is one of @types or a |