diff options
| author | Shohei YOSHIDA <syohex@gmail.com> | 2020-05-15 08:03:23 +0900 |
|---|---|---|
| committer | Shohei YOSHIDA <syohex@gmail.com> | 2020-05-15 08:03:23 +0900 |
| commit | ba0cc359152ca2c76aeb45ecc04d64e586bb30e8 (patch) | |
| tree | c240516baae6d7f45dd2264a724fe0e1a646c725 /src/_perf | |
| parent | Merge pull request #730 from syohex/syohex/perf-bench (diff) | |
| download | zsh-completions-ba0cc359152ca2c76aeb45ecc04d64e586bb30e8.tar zsh-completions-ba0cc359152ca2c76aeb45ecc04d64e586bb30e8.tar.gz zsh-completions-ba0cc359152ca2c76aeb45ecc04d64e586bb30e8.tar.bz2 zsh-completions-ba0cc359152ca2c76aeb45ecc04d64e586bb30e8.tar.lz zsh-completions-ba0cc359152ca2c76aeb45ecc04d64e586bb30e8.tar.xz zsh-completions-ba0cc359152ca2c76aeb45ecc04d64e586bb30e8.tar.zst zsh-completions-ba0cc359152ca2c76aeb45ecc04d64e586bb30e8.zip | |
Implement 'perf lock' completion
Diffstat (limited to 'src/_perf')
| -rw-r--r-- | src/_perf | 37 |
1 files changed, 34 insertions, 3 deletions
@@ -87,6 +87,16 @@ _perf_clock_id() { _values 'clocks' $clocks } +_perf_lock_subcommand() { + local -a subcmds=( + 'record:records lock events' + 'report:reports statistical data' + 'script:shows raw lock events' + 'info:shows metadata like threads or addresses of lock instances' + ) + _describe -t subcmds 'lock subcommand ' subcmds +} + _perf() { local context curcontext="$curcontext" state line typeset -A opt_args @@ -270,13 +280,13 @@ _perf() { && ret=0 ;; (lock) - # TODO Complete 'record' command - # TODO Complete 'report' command options _arguments \ '(-i --input)'{-i,--input=}'[input file name]: :_files' \ '(-v --verbose)'{-v,--verbose}'[be more verbose]' \ '(-D --dump-raw-trace)'{-D,--dump-raw-trace}'[dump raw trace in ASCII]' \ - '1:command:((record\:record\ lock\ events trace\:show\ raw\ lock\ events report\:report\ statistical\ data))' \ + '(-f --force)'{-f,--force}'[dont complain do it]' \ + '1:command:_perf_lock_subcommand' \ + '*:: :->lock_args' \ && ret=0 ;; (mem) @@ -698,6 +708,27 @@ _perf() { && ret=0 fi ;; + (lock_args) + case $words[1] in + (record) + _arguments \ + '1:command:_command_names -e' \ + '*::args:_normal' \ + && ret=0 + ;; + (report) + _arguments \ + '(-k --key)'{-k,--key=}'[sorting key]:key:(default contented avg_wait wait_total wait_max wait_min)' \ + && ret=0 + ;; + (info) + _arguments \ + '(-t --threads)'{-t,--threads}'[dump thread list in perf.data]' \ + '(-m --map)'{-m,--map}'[dump map of lock instances]' \ + && ret=0 + ;; + esac + ;; (mem_args) case $words[1] in (record) |
