
___x_cmd_kotlin___setarg_(){
    local x_="set --"

    local i=1
    local justadd=
    while [ "$#" -gt 0 ]; do
        if [ -n "$justadd" ]; then
            x_="$x_ \"\$$i\""
        else
            case "$1" in
                -e|-expression) x_=""; return ;;
                --|-script)     shift; i=$((i+1)); x_="$x_ --"; false   ;;
                -*)
                                if ___x_cmd_kotlin___setarg_singleopt "$1"; then
                                    x_="$x_ \"\$$i\""
                                else
                                    x_="$x_ \"\$$i\" \"\$$((i+1))\""
                                    shift 2
                                    i=$((i+2))
                                    continue
                                fi ;;
                *)              false ;;
            esac || {
                ___x_cmd_which_one "$1" || {
                    x_=""
                    kotlin:error "Abort because file path is unknown ==> $1"
                    kotlin:error "If you want more log ==> x log +x"
                    return 1
                }

                ___X_CMD_KOTLIN_WHICHFILE="$___X_CMD_WHICH_ONE_RESULT"
                x_="$x_ \"\$___X_CMD_KOTLIN_WHICHFILE\""
                justadd=1
            }
        fi
        shift
        i=$((i+1))
    done
    kotlin:debug "Args ==> $*"
}

___x_cmd_kotlin___setarg_singleopt(){
    case "$1" in
        -classpath|-howtorun) # TODO
            return 1
            ;;
    esac
    return 0
}

