summaryrefslogtreecommitdiff
path: root/pkgs/development/python-modules/termplotlib/gnuplot-subprocess.patch
diff options
context:
space:
mode:
authorManuel Mendez <github@i.m.mmlb.dev>2022-06-07 13:14:38 -0400
committerManuel Mendez <github@i.m.mmlb.dev>2022-06-09 16:57:15 -0400
commite91b5670e3fc0a7e39b9f3e469bedfe742d42eda (patch)
tree501f5e29080763f8e3d8f48e2b97499dfd572dc8 /pkgs/development/python-modules/termplotlib/gnuplot-subprocess.patch
parentd172061281406669cd7b820c9f566a8784b3c21d (diff)
cc-wrapper: Use case statements instead of bunch of if/elif checks
Makes for easier to read code imo, case-in-point there was a duplicate test for `$p = -E` before. While doing this little bit of refactor I changed rest -> kept because that makes more sense, rest sounds like its the rest of params while kept says these are the params that we've kept. I tested for no change in behavior using the following bash script: ``` reset() { cInclude=1 cxxInclude=1 cxxLibrary=1 dontLink=0 isCxx=0 nonFlagArgs=0 params=() } parseParams() { declare -i n=0 nParams=${#params[@]} while (("$n" < "$nParams")); do p=${params[n]} p2=${params[n + 1]:-} # handle `p` being last one case "$p" in -[cSEM] | -MM) dontLink=1 ;; -cc1) cc1=1 ;; -nostdinc) cInclude=0 cxxInclude=0 ;; -nostdinc++) cxxInclude=0 ;; -nostdlib) cxxLibrary=0 ;; -x) case "$p2" in *-header) dontLink=1 ;; c++*) isCxx=1 ;; esac ;; -?*) ;; *) nonFlagArgs=1 ;; # Includes a solitary dash (`-`) which signifies standard input; it is not a flag esac n+=1 done } for p in c S E M MM; do reset params=-$p parseParams [[ $dontLink != 1 ]] && echo "expected dontLink=1 for params:${params[@]}" >&2 && exit 1 done reset params=(-x foo-header) parseParams [[ $dontLink != 1 ]] && echo "expected dontLink=1 for params:${params[@]}" >&2 && exit 1 reset params=(-x c++-foo) parseParams [[ $isCxx != 1 ]] && echo "expected isCxx=1 for params:${params[@]}" >&2 && exit 1 reset params=-nostdlib parseParams [[ $cxxLibrary != 0 ]] && echo "expected cxxLibrary=0 for params:${params[@]}" >&2 && exit 1 reset params=-nostdinc parseParams [[ $cInclude != 0 ]] && echo "expected cInclude=0 for params:${params[@]}" >&2 && exit 1 [[ $cxxInclude != 0 ]] && echo "expected cxxInclude=0 for params:${params[@]}" >&2 && exit 1 reset params=-nostdinc++ parseParams [[ $cxxInclude != 0 ]] && echo "expected cxxInclude=0 for params:${params[@]}" >&2 && exit 1 reset params=-cc1 parseParams [[ $cc1 != 1 ]] && echo "expected cc1=1 for params:${params[@]}" >&2 && exit 1 reset params=- parseParams [[ $nonFlagArgs != 1 ]] && echo "expected nonFlagArgs=1 for params:${params[@]}" >&2 && exit 1 reset params=bleh parseParams [[ $nonFlagArgs != 1 ]] && echo "expected nonFlagArgs=1 for params:${params[@]}" >&2 && exit 1 reset params=-? parseParams [[ $nonFlagArgs != 0 ]] && echo "expected nonFlagArgs=0 for params:${params[@]}" >&2 && exit 1 exit 0 ```
Diffstat (limited to 'pkgs/development/python-modules/termplotlib/gnuplot-subprocess.patch')
0 files changed, 0 insertions, 0 deletions