refactor set builtin

This completes the refactoring of the `set` builtin. It also removes a
seemingly never used feature of the `set` command. It also eliminates all
the lint warnings about this module.

Fixes #4236
This commit is contained in:
Kurtis Rader
2017-07-24 11:42:54 -07:00
parent 54af9ace1a
commit 6f46f6b45a
6 changed files with 290 additions and 281 deletions

View File

@@ -161,10 +161,10 @@ end;
set -U -e baz
echo "Verify subcommand statuses"
echo "# Verify subcommand statuses"
echo (false) $status (true) $status (false) $status
echo "Verify that set passes through exit status, except when passed -n or -q or -e"
echo "# Verify that set passes through exit status, except when passed -n or -q or -e"
false ; set foo bar ; echo 1 $status # passthrough
true ; set foo bar ; echo 2 $status # passthrough
false ; set -q foo ; echo 3 $status # no passthrough
@@ -178,7 +178,7 @@ false ; set foo (echo A; true) ; echo 10 $status $foo
true ; set foo (echo B; false) ; echo 11 $status $foo
true
echo "Verify set -ql behavior" # see 2502
echo "# Verify set -ql behavior" # see 2502
function setql_check
set -l setql_foo val
if set -ql setql_foo