diff options
author | Mikael Magnusson <mikachu@gmail.com> | 2014-07-31 19:39:26 +0200 |
---|---|---|
committer | Mikael Magnusson <mikachu@gmail.com> | 2014-08-04 19:00:01 +0200 |
commit | b8751cb9d71d9f8e0ff24c469a8011ff1a58b1a8 (patch) | |
tree | f4b233d6a58b488661cf2bd6f34b291f3728f006 /Test/D04parameter.ztst | |
parent | 1f396dbe25259d4279811c893cbf381d675ad97c (diff) | |
download | zsh-b8751cb9d71d9f8e0ff24c469a8011ff1a58b1a8.tar.gz zsh-b8751cb9d71d9f8e0ff24c469a8011ff1a58b1a8.tar.xz zsh-b8751cb9d71d9f8e0ff24c469a8011ff1a58b1a8.zip |
32949 (wip 32928, 32937): Add :^ syntax for zipping two arrays
Diffstat (limited to 'Test/D04parameter.ztst')
-rw-r--r-- | Test/D04parameter.ztst | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/Test/D04parameter.ztst b/Test/D04parameter.ztst index a8cc93a12..49dcea901 100644 --- a/Test/D04parameter.ztst +++ b/Test/D04parameter.ztst @@ -1560,3 +1560,79 @@ 0:Intersection and disjunction with empty parameters >0 >0 + + foo=(a b c) + bar=(1 2 3) + print ${foo:^bar} + print ${foo:^^bar} + foo=(a b c d) + bar=(1 2) + print ${foo:^bar} + print ${foo:^^bar} + foo=('a a' b) + bar=(1 '2 2') + print -l "${foo:^bar}" + print -l "${(@)foo:^bar}" +0:Zipping arrays, correct output +>a 1 b 2 c 3 +>a 1 b 2 c 3 +>a 1 b 2 +>a 1 b 2 c 1 d 2 +# maybe this should be changed to output "a a b 1" +>a a b +>1 +>a a +>1 +>b +>2 2 + + foo=(a b c) + bar=() + print ${foo:^bar} + print ${foo:^^bar} + print ${bar:^foo} + print ${bar:^^foo} + print ${bar:^bar} + print ${bar:^^bar} +0:Zipping arrays, one or both inputs empty +> +>a b c +> +>a b c +> +> + + foo=text + bar=() + print ${foo:^bar} + print ${bar:^^foo} + bar=other + print ${foo:^bar} + bar=(array elements) + print ${foo:^bar} + print ${foo:^^bar} + print ${bar:^foo} + print ${bar:^^foo} +0:Zipping arrays, scalar input +> +>text +>text other +>text array +>text array text elements +>array text +>array text elements text + + foo=(a b c) + print ${foo:^^^bar} +1:Zipping arrays, parsing +?(eval):2: not an identifier: ^bar + + (setopt nounset + print ${foo:^noexist}) +1:Zipping arrays, NO_UNSET part 1 +?(eval):2: noexist: parameter not set + + (setopt nounset + print ${noexist:^foo}) +1:Zipping arrays, NO_UNSET part 2 +?(eval):2: noexist: parameter not set |