API-CLI

 view release on metacpan or  search on metacpan

examples/bash/githubcl.bash  view on Meta::CPAN

#!bash

# http://stackoverflow.com/questions/7267185/bash-autocompletion-add-description-for-possible-completions

_githubcl() {

    COMPREPLY=()
    local program=githubcl
    local cur=${COMP_WORDS[$COMP_CWORD]}
#    echo "COMP_CWORD:$COMP_CWORD cur:$cur" >>/tmp/comp
    declare -a FLAGS
    declare -a OPTIONS
    declare -a MYWORDS

    local INDEX=`expr $COMP_CWORD - 1`
    MYWORDS=("${COMP_WORDS[@]:1:$COMP_CWORD}")

    FLAGS=('--debug' 'debug' '-d' 'debug' '--verbose' 'verbose' '-v' 'verbose' '--help' 'Show command help' '-h' 'Show command help')
    OPTIONS=('--data-file' 'File with data for POST/PUT/PATCH/DELETE requests')
    __githubcl_handle_options_flags

    case $INDEX in

    0)
        __comp_current_options || return
        __githubcl_dynamic_comp 'commands' 'DELETE'$'\t''DELETE call'$'\n''GET'$'\t''GET call'$'\n''PATCH'$'\t''PATCH call'$'\n''POST'$'\t''POST call'$'\n''PUT'$'\t''PUT call'$'\n''help'$'\t''Show command help'

    ;;
    *)
    # subcmds
    case ${MYWORDS[0]} in
      DELETE)
        FLAGS+=()
        OPTIONS+=()
        __githubcl_handle_options_flags
        case $INDEX in

        1)
            __comp_current_options || return
            __githubcl_dynamic_comp 'commands' '/gists/:id'$'\t''Delete a gist.'$'\n''/gists/:id/comments/:commentId'$'\t''Delete a comment.'$'\n''/gists/:id/star'$'\t''Unstar a gist.'$'\n''/notifications/threads/:id/subscription'$'\t''Delete a Threa...

        ;;
        *)
        # subcmds
        case ${MYWORDS[1]} in
          /gists/:id)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /gists/:id/comments/:commentId)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /gists/:id/star)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /notifications/threads/:id/subscription)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /orgs/:org/members/:username)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /orgs/:org/public_members/:username)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo)

examples/bash/githubcl.bash  view on Meta::CPAN

                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/releases/:id)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              4)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/releases/assets/:id)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              4)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/subscription)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /teams/:teamId)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /teams/:teamId/members/:username)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /teams/:teamId/memberships/:username)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /teams/:teamId/repos/:owner/:repo)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              4)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /user/emails)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
          /user/following/:username)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /user/keys/:keyId)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /user/starred/:owner/:repo)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /user/subscriptions/:owner/:repo)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
        esac

        ;;
        esac
      ;;
      GET)
        FLAGS+=()
        OPTIONS+=()
        __githubcl_handle_options_flags
        case $INDEX in

        1)
            __comp_current_options || return
            __githubcl_dynamic_comp 'commands' '/emojis'$'\t''Lists all the emojis available to use on GitHub....'$'\n''/events'$'\t''List public events.'$'\n''/feeds'$'\t''List Feeds.'$'\n''/gists'$'\t''List the authenticated user'"'"'s gists or if ...

        ;;
        *)
        # subcmds
        case ${MYWORDS[1]} in
          /emojis)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
          /events)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
          /feeds)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
          /gists)
            FLAGS+=()
            OPTIONS+=('--q-since' 'Timestamp in ISO 8601 format YYYY-MM-DDTHH:MM:SSZ.
Only gists updated at or after this time are returned.
')
            __githubcl_handle_options_flags
              case $INDEX in
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;
                  --q-since)
                  ;;

                esac
                ;;
            esac
          ;;
          /gists/:id)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /gists/:id/comments)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /gists/:id/comments/:commentId)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags

examples/bash/githubcl.bash  view on Meta::CPAN

          /gists/:id/star)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /gists/public)
            FLAGS+=()
            OPTIONS+=('--q-since' 'Timestamp in ISO 8601 format YYYY-MM-DDTHH:MM:SSZ.
Only gists updated at or after this time are returned.
')
            __githubcl_handle_options_flags
              case $INDEX in
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;
                  --q-since)
                  ;;

                esac
                ;;
            esac
          ;;
          /gists/starred)
            FLAGS+=()
            OPTIONS+=('--q-since' 'Timestamp in ISO 8601 format YYYY-MM-DDTHH:MM:SSZ.
Only gists updated at or after this time are returned.
')
            __githubcl_handle_options_flags
              case $INDEX in
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;
                  --q-since)
                  ;;

                esac
                ;;
            esac
          ;;
          /gitignore/templates)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
          /gitignore/templates/:language)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /issues)
            FLAGS+=()
            OPTIONS+=('--q-filter' 'Issues assigned to you / created by you / mentioning you / you'"'"'re
subscribed to updates for / All issues the authenticated user can see
' '--q-state' '' '--q-labels' 'String list of comma separated Label names. Example - bug,ui,@high.' '--q-sort' '' '--q-direction' '' '--q-since' 'Optional string of a timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.
Only issues updated at or after this time are returned.
')
            __githubcl_handle_options_flags
              case $INDEX in
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;
                  --q-filter)
                    _githubcl_compreply "'assigned'"$'\n'"'created'"$'\n'"'mentioned'"$'\n'"'subscribed'"$'\n'"'all'"
                  ;;
                  --q-state)
                    _githubcl_compreply "'open'"$'\n'"'closed'"
                  ;;
                  --q-labels)
                  ;;
                  --q-sort)
                    _githubcl_compreply "'created'"$'\n'"'updated'"$'\n'"'comments'"
                  ;;
                  --q-direction)
                    _githubcl_compreply "'asc'"$'\n'"'desc'"
                  ;;
                  --q-since)
                  ;;

                esac
                ;;
            esac
          ;;
          /legacy/issues/search/:owner/:repository/:state/:keyword)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
                    _githubcl_compreply "open"$'\n'"closed"
              ;;
              4)
                  __comp_current_options || return
              ;;
              5)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /legacy/repos/search/:keyword)
            FLAGS+=()
            OPTIONS+=('--q-order' 'The sort field. if sort param is provided. Can be either asc or desc.' '--q-language' 'Filter results by language' '--q-start_page' 'The page number to fetch' '--q-sort' 'The sort field. One of stars, forks, or upda...
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

examples/bash/githubcl.bash  view on Meta::CPAN

                  --q-language)
                  ;;
                  --q-start_page)
                  ;;
                  --q-sort)
                    _githubcl_compreply "'updated'"$'\n'"'stars'"$'\n'"'forks'"
                  ;;

                esac
                ;;
            esac
          ;;
          /legacy/user/email/:email)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /legacy/user/search/:keyword)
            FLAGS+=()
            OPTIONS+=('--q-order' 'The sort field. if sort param is provided. Can be either asc or desc.' '--q-start_page' 'The page number to fetch' '--q-sort' 'The sort field. One of stars, forks, or updated. Default: results are sorted by best mat...
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;
                  --q-order)
                    _githubcl_compreply "'desc'"$'\n'"'asc'"
                  ;;
                  --q-start_page)
                  ;;
                  --q-sort)
                    _githubcl_compreply "'updated'"$'\n'"'stars'"$'\n'"'forks'"
                  ;;

                esac
                ;;
            esac
          ;;
          /meta)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
          /networks/:owner/:repo/events)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /notifications)
            FLAGS+=()
            OPTIONS+=('--q-all' 'True to show notifications marked as read.' '--q-participating' 'True to show only notifications in which the user is directly participating
or mentioned.
' '--q-since' 'The time should be passed in as UTC in the ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.
Example: "2012-10-09T23:39:01Z".
')
            __githubcl_handle_options_flags
              case $INDEX in
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;
                  --q-all)
                  ;;
                  --q-participating)
                  ;;
                  --q-since)
                  ;;

                esac
                ;;
            esac
          ;;
          /notifications/threads/:id)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /notifications/threads/:id/subscription)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /orgs/:org)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /orgs/:org/events)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /orgs/:org/issues)
            FLAGS+=()
            OPTIONS+=('--q-filter' 'Issues assigned to you / created by you / mentioning you / you'"'"'re
subscribed to updates for / All issues the authenticated user can see
' '--q-state' '' '--q-labels' 'String list of comma separated Label names. Example - bug,ui,@high.' '--q-sort' '' '--q-direction' '' '--q-since' 'Optional string of a timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.
Only issues updated at or after this time are returned.
')
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;
                  --q-filter)
                    _githubcl_compreply "'assigned'"$'\n'"'created'"$'\n'"'mentioned'"$'\n'"'subscribed'"$'\n'"'all'"
                  ;;
                  --q-state)
                    _githubcl_compreply "'open'"$'\n'"'closed'"
                  ;;
                  --q-labels)
                  ;;
                  --q-sort)
                    _githubcl_compreply "'created'"$'\n'"'updated'"$'\n'"'comments'"
                  ;;
                  --q-direction)
                    _githubcl_compreply "'asc'"$'\n'"'desc'"
                  ;;
                  --q-since)
                  ;;

                esac
                ;;
            esac
          ;;
          /orgs/:org/members)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /orgs/:org/members/:username)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /orgs/:org/public_members)
            FLAGS+=()

examples/bash/githubcl.bash  view on Meta::CPAN

              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /orgs/:org/repos)
            FLAGS+=()
            OPTIONS+=('--q-type' '')
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;
                  --q-type)
                    _githubcl_compreply "'all'"$'\n'"'public'"$'\n'"'private'"$'\n'"'forks'"$'\n'"'sources'"$'\n'"'member'"
                  ;;

                esac
                ;;
            esac
          ;;
          /orgs/:org/teams)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /rate_limit)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
          /repos/:owner/:repo)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/:archive_format/:path)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              4)
                  __comp_current_options || return
                    _githubcl_compreply "tarball"$'\n'"zipball"
              ;;
              5)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/assignees)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return

examples/bash/githubcl.bash  view on Meta::CPAN

              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;
                  --q-recursive)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/hooks)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/hooks/:hookId)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              4)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/issues)
            FLAGS+=()
            OPTIONS+=('--q-filter' 'Issues assigned to you / created by you / mentioning you / you'"'"'re
subscribed to updates for / All issues the authenticated user can see
' '--q-state' '' '--q-labels' 'String list of comma separated Label names. Example - bug,ui,@high.' '--q-sort' '' '--q-direction' '' '--q-since' 'Optional string of a timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.
Only issues updated at or after this time are returned.
')
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;
                  --q-filter)
                    _githubcl_compreply "'assigned'"$'\n'"'created'"$'\n'"'mentioned'"$'\n'"'subscribed'"$'\n'"'all'"
                  ;;
                  --q-state)
                    _githubcl_compreply "'open'"$'\n'"'closed'"
                  ;;
                  --q-labels)
                  ;;
                  --q-sort)
                    _githubcl_compreply "'created'"$'\n'"'updated'"$'\n'"'comments'"
                  ;;
                  --q-direction)
                    _githubcl_compreply "'asc'"$'\n'"'desc'"
                  ;;
                  --q-since)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/issues/:number)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              4)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/issues/:number/comments)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              4)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in

examples/bash/githubcl.bash  view on Meta::CPAN

                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/stats/punch_card)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/statuses/:ref)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              4)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/subscribers)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/subscription)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/tags)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/teams)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;

examples/bash/githubcl.bash  view on Meta::CPAN

              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /teams/:teamId/repos)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /teams/:teamId/repos/:owner/:repo)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              4)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /user)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
          /user/emails)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
          /user/followers)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
          /user/following)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
          /user/following/:username)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /user/issues)
            FLAGS+=()
            OPTIONS+=('--q-filter' 'Issues assigned to you / created by you / mentioning you / you'"'"'re
subscribed to updates for / All issues the authenticated user can see
' '--q-state' '' '--q-labels' 'String list of comma separated Label names. Example - bug,ui,@high.' '--q-sort' '' '--q-direction' '' '--q-since' 'Optional string of a timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.
Only issues updated at or after this time are returned.
')
            __githubcl_handle_options_flags
              case $INDEX in
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;
                  --q-filter)
                    _githubcl_compreply "'assigned'"$'\n'"'created'"$'\n'"'mentioned'"$'\n'"'subscribed'"$'\n'"'all'"
                  ;;
                  --q-state)
                    _githubcl_compreply "'open'"$'\n'"'closed'"
                  ;;
                  --q-labels)
                  ;;
                  --q-sort)
                    _githubcl_compreply "'created'"$'\n'"'updated'"$'\n'"'comments'"
                  ;;
                  --q-direction)
                    _githubcl_compreply "'asc'"$'\n'"'desc'"
                  ;;
                  --q-since)
                  ;;

                esac
                ;;
            esac
          ;;
          /user/keys)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
          /user/keys/:keyId)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /user/orgs)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
          /user/repos)
            FLAGS+=()
            OPTIONS+=('--q-type' '')
            __githubcl_handle_options_flags
              case $INDEX in
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;
                  --q-type)
                    _githubcl_compreply "'all'"$'\n'"'public'"$'\n'"'private'"$'\n'"'forks'"$'\n'"'sources'"$'\n'"'member'"
                  ;;

                esac
                ;;
            esac
          ;;
          /user/starred)
            FLAGS+=()
            OPTIONS+=('--q-direction' 'Ignored without '"'"'sort'"'"' parameter.' '--q-sort' '')
            __githubcl_handle_options_flags
              case $INDEX in
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;
                  --q-direction)
                  ;;
                  --q-sort)
                    _githubcl_compreply "'created'"$'\n'"'updated'"
                  ;;

                esac
                ;;
            esac
          ;;
          /user/starred/:owner/:repo)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /user/subscriptions)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
          /user/subscriptions/:owner/:repo)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /user/teams)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
          /users)
            FLAGS+=()
            OPTIONS+=('--q-since' 'The integer ID of the last User that you'"'"'ve seen.')
            __githubcl_handle_options_flags
              case $INDEX in
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;
                  --q-since)
                  ;;

                esac
                ;;
            esac
          ;;
          /users/:username)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /users/:username/events)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /users/:username/events/orgs/:org)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)

examples/bash/githubcl.bash  view on Meta::CPAN

                ;;
            esac
          ;;
          /users/:username/received_events/public)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /users/:username/repos)
            FLAGS+=()
            OPTIONS+=('--q-type' '')
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;
                  --q-type)
                    _githubcl_compreply "'all'"$'\n'"'public'"$'\n'"'private'"$'\n'"'forks'"$'\n'"'sources'"$'\n'"'member'"
                  ;;

                esac
                ;;
            esac
          ;;
          /users/:username/starred)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /users/:username/subscriptions)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
        esac

        ;;
        esac
      ;;
      PATCH)
        FLAGS+=()
        OPTIONS+=()
        __githubcl_handle_options_flags
        case $INDEX in

        1)
            __comp_current_options || return
            __githubcl_dynamic_comp 'commands' '/gists/:id'$'\t''Edit a gist.'$'\n''/gists/:id/comments/:commentId'$'\t''Edit a comment.'$'\n''/notifications/threads/:id'$'\t''Mark a thread as read'$'\n''/orgs/:org'$'\t''Edit an Organization.'$'\n''/...

        ;;
        *)
        # subcmds
        case ${MYWORDS[1]} in
          /gists/:id)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /gists/:id/comments/:commentId)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /notifications/threads/:id)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /orgs/:org)
            FLAGS+=()

examples/bash/githubcl.bash  view on Meta::CPAN

              ;;
              4)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/releases/assets/:id)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              4)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /teams/:teamId)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /user)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
        esac

        ;;
        esac
      ;;
      POST)
        FLAGS+=()
        OPTIONS+=()
        __githubcl_handle_options_flags
        case $INDEX in

        1)
            __comp_current_options || return
            __githubcl_dynamic_comp 'commands' '/gists'$'\t''Create a gist.'$'\n''/gists/:id/comments'$'\t''Create a commen'$'\n''/gists/:id/forks'$'\t''Fork a gist.'$'\n''/markdown'$'\t''Render an arbitrary Markdown document...'$'\n''/markdown/raw'$...

        ;;
        *)
        # subcmds
        case ${MYWORDS[1]} in
          /gists)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
          /gists/:id/comments)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /gists/:id/forks)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /markdown)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
          /markdown/raw)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
          /orgs/:org/repos)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /orgs/:org/teams)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/commits/:shaCode/comments)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              4)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac

examples/bash/githubcl.bash  view on Meta::CPAN

              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/releases)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/statuses/:ref)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              4)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /user/emails)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
          /user/keys)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
          /user/repos)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
        esac

        ;;
        esac
      ;;
      PUT)
        FLAGS+=()
        OPTIONS+=()
        __githubcl_handle_options_flags
        case $INDEX in

        1)
            __comp_current_options || return
            __githubcl_dynamic_comp 'commands' '/gists/:id/star'$'\t''Star a gist.'$'\n''/notifications'$'\t''Mark as read.'$'\n''/notifications/threads/:id/subscription'$'\t''Set a Thread Subscription.'$'\n''/orgs/:org/public_members/:username'$'\t'...

        ;;
        *)
        # subcmds
        case ${MYWORDS[1]} in
          /gists/:id/star)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /notifications)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            __comp_current_options true || return # no subcmds, no params/opts
          ;;
          /notifications/threads/:id/subscription)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /orgs/:org/public_members/:username)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/collaborators/:user)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              4)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;

examples/bash/githubcl.bash  view on Meta::CPAN

                  __comp_current_options || return
              ;;
              4)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/notifications)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/pulls/:number/merge)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              4)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /repos/:owner/:repo/subscription)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /teams/:teamId/members/:username)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /teams/:teamId/memberships/:username)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;

examples/bash/githubcl.bash  view on Meta::CPAN

            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              4)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /user/following/:username)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /user/starred/:owner/:repo)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
          /user/subscriptions/:owner/:repo)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
              case $INDEX in
              2)
                  __comp_current_options || return
              ;;
              3)
                  __comp_current_options || return
              ;;
              *)
                __comp_current_options true || return # after parameters
                case ${MYWORDS[$INDEX-1]} in
                  --data-file)
                  ;;

                esac
                ;;
            esac
          ;;
        esac

        ;;
        esac
      ;;
      _meta)
        FLAGS+=()
        OPTIONS+=()
        __githubcl_handle_options_flags
        case $INDEX in

        1)
            __comp_current_options || return
            __githubcl_dynamic_comp 'commands' 'completion'$'\t''Shell completion functions'$'\n''pod'$'\t''Pod documentation'

        ;;
        *)
        # subcmds
        case ${MYWORDS[1]} in
          completion)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            case $INDEX in

            2)
                __comp_current_options || return
                __githubcl_dynamic_comp 'commands' 'generate'$'\t''Generate self completion'

            ;;
            *)
            # subcmds
            case ${MYWORDS[2]} in
              generate)
                FLAGS+=('--zsh' 'for zsh' '--bash' 'for bash')
                OPTIONS+=('--name' 'name of the program (optional, override name in spec)')
                __githubcl_handle_options_flags
                  case $INDEX in
                  *)
                    __comp_current_options true || return # after parameters
                    case ${MYWORDS[$INDEX-1]} in
                      --data-file)
                      ;;
                      --name)
                      ;;

                    esac
                    ;;
                esac
              ;;
            esac

            ;;
            esac
          ;;
          pod)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            case $INDEX in

            2)
                __comp_current_options || return
                __githubcl_dynamic_comp 'commands' 'generate'$'\t''Generate self pod'

            ;;
            *)
            # subcmds
            case ${MYWORDS[2]} in
              generate)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
            esac

            ;;
            esac
          ;;
        esac

        ;;
        esac
      ;;
      help)
        FLAGS+=('--all' '')
        OPTIONS+=()
        __githubcl_handle_options_flags
        case $INDEX in

        1)
            __comp_current_options || return
            __githubcl_dynamic_comp 'commands' 'DELETE'$'\n''GET'$'\n''PATCH'$'\n''POST'$'\n''PUT'

        ;;
        *)
        # subcmds
        case ${MYWORDS[1]} in
          DELETE)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            case $INDEX in

            2)
                __comp_current_options || return
                __githubcl_dynamic_comp 'commands' '/gists/:id'$'\n''/gists/:id/comments/:commentId'$'\n''/gists/:id/star'$'\n''/notifications/threads/:id/subscription'$'\n''/orgs/:org/members/:username'$'\n''/orgs/:org/public_members/:username'$'\n'...

            ;;
            *)
            # subcmds
            case ${MYWORDS[2]} in
              /gists/:id)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /gists/:id/comments/:commentId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /gists/:id/star)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /notifications/threads/:id/subscription)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /orgs/:org/members/:username)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /orgs/:org/public_members/:username)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/collaborators/:user)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/comments/:commentId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/contents/:path)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/downloads/:downloadId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/git/refs/:ref)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/hooks/:hookId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/issues/:number/labels)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/issues/:number/labels/:name)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/issues/comments/:commentId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/keys/:keyId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/labels/:name)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/milestones/:number)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/pulls/comments/:commentId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/releases/:id)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/releases/assets/:id)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/subscription)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /teams/:teamId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /teams/:teamId/members/:username)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /teams/:teamId/memberships/:username)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /teams/:teamId/repos/:owner/:repo)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/emails)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/following/:username)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/keys/:keyId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/starred/:owner/:repo)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/subscriptions/:owner/:repo)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
            esac

            ;;
            esac
          ;;
          GET)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            case $INDEX in

            2)
                __comp_current_options || return
                __githubcl_dynamic_comp 'commands' '/emojis'$'\n''/events'$'\n''/feeds'$'\n''/gists'$'\n''/gists/:id'$'\n''/gists/:id/comments'$'\n''/gists/:id/comments/:commentId'$'\n''/gists/:id/star'$'\n''/gists/public'$'\n''/gists/starred'$'\n''/...

            ;;
            *)
            # subcmds
            case ${MYWORDS[2]} in
              /emojis)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /events)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /feeds)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /gists)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /gists/:id)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /gists/:id/comments)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /gists/:id/comments/:commentId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /gists/:id/star)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /gists/public)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /gists/starred)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /gitignore/templates)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /gitignore/templates/:language)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /issues)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /legacy/issues/search/:owner/:repository/:state/:keyword)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /legacy/repos/search/:keyword)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /legacy/user/email/:email)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /legacy/user/search/:keyword)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /meta)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /networks/:owner/:repo/events)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /notifications)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /notifications/threads/:id)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /notifications/threads/:id/subscription)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /orgs/:org)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /orgs/:org/events)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /orgs/:org/issues)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /orgs/:org/members)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /orgs/:org/members/:username)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /orgs/:org/public_members)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /orgs/:org/public_members/:username)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /orgs/:org/repos)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /orgs/:org/teams)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /rate_limit)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/:archive_format/:path)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/assignees)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/assignees/:assignee)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/branches)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/branches/:branch)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/collaborators)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/collaborators/:user)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/comments)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/comments/:commentId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/commits)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/commits/:ref/status)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/commits/:shaCode)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/commits/:shaCode/comments)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/compare/:baseId...:headId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/contents/:path)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/contributors)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/deployments)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/deployments/:id/statuses)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/downloads)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/downloads/:downloadId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/events)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/forks)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/git/blobs/:shaCode)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/git/commits/:shaCode)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/git/refs)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/git/refs/:ref)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/git/tags/:shaCode)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/git/trees/:shaCode)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/hooks)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/hooks/:hookId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/issues)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/issues/:number)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/issues/:number/comments)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/issues/:number/events)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/issues/:number/labels)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/issues/comments)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/issues/comments/:commentId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/issues/events)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/issues/events/:eventId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/keys)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/keys/:keyId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/labels)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/labels/:name)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/languages)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/milestones)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/milestones/:number)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/milestones/:number/labels)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/notifications)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/pulls)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/pulls/:number)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/pulls/:number/comments)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/pulls/:number/commits)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/pulls/:number/files)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/pulls/:number/merge)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/pulls/comments)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/pulls/comments/:commentId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/readme)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/releases)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/releases/:id)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/releases/:id/assets)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/releases/assets/:id)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/stargazers)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/stats/code_frequency)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/stats/commit_activity)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/stats/contributors)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/stats/participation)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/stats/punch_card)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/statuses/:ref)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/subscribers)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/subscription)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/tags)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/teams)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/watchers)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repositories)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /search/code)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /search/issues)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /search/repositories)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /search/users)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /teams/:teamId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /teams/:teamId/members)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /teams/:teamId/members/:username)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /teams/:teamId/memberships/:username)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /teams/:teamId/repos)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /teams/:teamId/repos/:owner/:repo)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/emails)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/followers)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/following)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/following/:username)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/issues)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/keys)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/keys/:keyId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/orgs)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/repos)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/starred)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/starred/:owner/:repo)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/subscriptions)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/subscriptions/:owner/:repo)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/teams)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /users)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /users/:username)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /users/:username/events)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /users/:username/events/orgs/:org)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /users/:username/followers)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /users/:username/following/:targetUser)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /users/:username/gists)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /users/:username/keys)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /users/:username/orgs)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /users/:username/received_events)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /users/:username/received_events/public)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /users/:username/repos)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /users/:username/starred)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /users/:username/subscriptions)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
            esac

            ;;
            esac
          ;;
          PATCH)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            case $INDEX in

            2)
                __comp_current_options || return
                __githubcl_dynamic_comp 'commands' '/gists/:id'$'\n''/gists/:id/comments/:commentId'$'\n''/notifications/threads/:id'$'\n''/orgs/:org'$'\n''/repos/:owner/:repo'$'\n''/repos/:owner/:repo/comments/:commentId'$'\n''/repos/:owner/:repo/gi...

            ;;
            *)
            # subcmds
            case ${MYWORDS[2]} in
              /gists/:id)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /gists/:id/comments/:commentId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /notifications/threads/:id)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /orgs/:org)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/comments/:commentId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/git/refs/:ref)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/hooks/:hookId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/issues/:number)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/issues/comments/:commentId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/labels/:name)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/milestones/:number)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/pulls/:number)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/pulls/comments/:commentId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/releases/:id)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/releases/assets/:id)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /teams/:teamId)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
            esac

            ;;
            esac
          ;;
          POST)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            case $INDEX in

            2)
                __comp_current_options || return
                __githubcl_dynamic_comp 'commands' '/gists'$'\n''/gists/:id/comments'$'\n''/gists/:id/forks'$'\n''/markdown'$'\n''/markdown/raw'$'\n''/orgs/:org/repos'$'\n''/orgs/:org/teams'$'\n''/repos/:owner/:repo/commits/:shaCode/comments'$'\n''/r...

            ;;
            *)
            # subcmds
            case ${MYWORDS[2]} in
              /gists)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /gists/:id/comments)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /gists/:id/forks)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /markdown)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /markdown/raw)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /orgs/:org/repos)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /orgs/:org/teams)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/commits/:shaCode/comments)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/deployments)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/deployments/:id/statuses)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/forks)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/git/blobs)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/git/commits)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/git/refs)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/git/tags)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/git/trees)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/hooks)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/hooks/:hookId/tests)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/issues)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/issues/:number/comments)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/issues/:number/labels)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/keys)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/labels)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/merges)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/milestones)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/pulls)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/pulls/:number/comments)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/releases)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/statuses/:ref)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/emails)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/keys)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/repos)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
            esac

            ;;
            esac
          ;;
          PUT)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            case $INDEX in

            2)
                __comp_current_options || return
                __githubcl_dynamic_comp 'commands' '/gists/:id/star'$'\n''/notifications'$'\n''/notifications/threads/:id/subscription'$'\n''/orgs/:org/public_members/:username'$'\n''/repos/:owner/:repo/collaborators/:user'$'\n''/repos/:owner/:repo/c...

            ;;
            *)
            # subcmds
            case ${MYWORDS[2]} in
              /gists/:id/star)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /notifications)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /notifications/threads/:id/subscription)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /orgs/:org/public_members/:username)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/collaborators/:user)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/contents/:path)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/issues/:number/labels)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/notifications)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/pulls/:number/merge)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /repos/:owner/:repo/subscription)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /teams/:teamId/members/:username)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /teams/:teamId/memberships/:username)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /teams/:teamId/repos/:org/:repo)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/following/:username)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/starred/:owner/:repo)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
              /user/subscriptions/:owner/:repo)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                __comp_current_options true || return # no subcmds, no params/opts
              ;;
            esac

            ;;
            esac
          ;;
          _meta)
            FLAGS+=()
            OPTIONS+=()
            __githubcl_handle_options_flags
            case $INDEX in

            2)
                __comp_current_options || return
                __githubcl_dynamic_comp 'commands' 'completion'$'\n''pod'

            ;;
            *)
            # subcmds
            case ${MYWORDS[2]} in
              completion)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                case $INDEX in

                3)
                    __comp_current_options || return
                    __githubcl_dynamic_comp 'commands' 'generate'

                ;;
                *)
                # subcmds
                case ${MYWORDS[3]} in
                  generate)
                    FLAGS+=()
                    OPTIONS+=()
                    __githubcl_handle_options_flags
                    __comp_current_options true || return # no subcmds, no params/opts
                  ;;
                esac

                ;;
                esac
              ;;
              pod)
                FLAGS+=()
                OPTIONS+=()
                __githubcl_handle_options_flags
                case $INDEX in

                3)
                    __comp_current_options || return
                    __githubcl_dynamic_comp 'commands' 'generate'

                ;;
                *)
                # subcmds
                case ${MYWORDS[3]} in
                  generate)
                    FLAGS+=()
                    OPTIONS+=()
                    __githubcl_handle_options_flags
                    __comp_current_options true || return # no subcmds, no params/opts
                  ;;
                esac

                ;;
                esac
              ;;
            esac

            ;;
            esac
          ;;
        esac

        ;;
        esac
      ;;
    esac

    ;;
    esac

}

_githubcl_compreply() {
    IFS=$'\n' COMPREPLY=($(compgen -W "$1" -- ${COMP_WORDS[COMP_CWORD]}))
    if [[ ${#COMPREPLY[*]} -eq 1 ]]; then # Only one completion
        COMPREPLY=( ${COMPREPLY[0]%% -- *} ) # Remove ' -- ' and everything after
        COMPREPLY="$(echo -e "$COMPREPLY" | sed -e 's/[[:space:]]*$//')"
    fi
}


__githubcl_dynamic_comp() {
    local argname="$1"
    local arg="$2"
    local comp name desc cols desclength formatted
    local max=0

    while read -r line; do
        name="$line"
        desc="$line"
        name="${name%$'\t'*}"
        if [[ "${#name}" -gt "$max" ]]; then
            max="${#name}"
        fi
    done <<< "$arg"

    while read -r line; do
        name="$line"
        desc="$line"
        name="${name%$'\t'*}"
        desc="${desc/*$'\t'}"
        if [[ -n "$desc" && "$desc" != "$name" ]]; then
            # TODO portable?
            cols=`tput cols`
            [[ -z $cols ]] && cols=80
            desclength=`expr $cols - 4 - $max`
            formatted=`printf "'%-*s -- %-*s'" "$max" "$name" "$desclength" "$desc"`
            comp="$comp$formatted"$'\n'
        else



( run in 2.173 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )