changelog shortlog graph tags branches changeset files revisions annotate raw help

Mercurial > core / lisp/lib/cli/clap/pkg.lisp

changeset 646: 95fd920af398
parent: 3e6a17fb5712
child: 6e5006dfe7b8
author: Richard Westhaver <ellis@rwest.io>
date: Wed, 11 Sep 2024 18:08:29 -0400
permissions: -rw-r--r--
description: error handling methods for clap
1 ;;; cli/clap/pkg.lisp --- Clap Package Definitions
2 
3 ;;
4 
5 ;;; Code:
6 (defpackage :cli/clap/vars
7  (:use :cl)
8  (:export :*cli-group-separator* :*no-exit* :*default-cli-def*
9  :*default-cli-class* :*cli-opt-kinds* :*cli* :*opts*
10  :*args* :*argc* :*arg* :*optc*))
11 
12 (defpackage :cli/clap/util
13  (:use :cl :std :log :sb-ext :cli/clap/vars)
14  (:export :args :arg0 :long-opt-p
15  :short-opt-p :opt-group-p :opt-string-prefix-eq :cli-opt-kind-p
16  :default-thunk
17  :long-opt-has-eq-p))
18 
19 (defpackage :cli/clap/macs
20  (:use :cl :std :log :sb-ext :cli/clap/util :cli/clap/vars)
21  (:export :defopt :defcmd
22  :make-opt-parser :with-cli-handlers :make-shorty
23  :with-opt-restart-case))
24 
25 (defpackage :cli/clap/proto
26  (:use :cl :std :log :sb-ext)
27  (:export :proc-args :clap-error :find-short-opts
28  :find-cmd :find-opts :parse-args :print-help
29  :print-usage :print-version :do-cmds :do-cmd
30  :active-cmds :active-opts :call-opt :do-opt
31  :push-cmd :push-opt :cli-equal
32  :do-opts
33  :clap-simple-error
34  :clap-simple-warning
35  :clap-warning
36  :clap-unknown-argument
37  :handle-unknown-opt
38  :handle-missing-opt
39  :handle-invalid-opt
40  :handle-unknown-arg
41  :handle-missing-arg
42  :handle-invalid-arg
43  :clap-missing-argument
44  :clap-invalid-argument))
45 
46 (defpackage :cli/clap/ast
47  (:use :cl :std :log :dat/sxp)
48  (:export :cli-node :make-cli-node :cli-ast
49  :make-cli-ast :cli-node-kind :cli-node-form))
50 
51 (defpackage :cli/clap/obj
52  (:use :cl :std :log
53  :sb-ext :cli/clap/proto :cli/clap/macs :cli/clap/util
54  :cli/clap/vars :cli/clap/ast :cli/clap/util)
55  (:import-from :dat/sxp :ast)
56  (:export :make-cli :define-cli :defmain
57  :make-opts :make-cmds :parse-bool-opt :parse-string-opt
58  :parse-form-opt :parse-list-op :parse-sym-op :parse-key-op
59  :pasre-num-op :parse-file-op :parse-dir-op :cli
60  :cli-cd :with-cli :opts :cmds :debug-opts
61  :cli-opt :cli-cmd :cli-opt-val :cli-opt-lock :cli-opt-name))
62 
63 (defpackage :cli/clap/simple
64  (:use :cl :std :log :sb-ext)
65  (:import-from :cli/ansi :.ris)
66  (:import-from :uiop :println)
67  (:import-from :sb-ext :parse-native-namestring)
68  (:shadowing-import-from :sb-ext :exit)
69  (:export))
70 
71 (pkg:defpkg :cli/clap
72  (:nicknames :clap)
73  (:use-reexport :cli/clap/obj :cli/clap/vars :cli/clap/proto
74  :cli/clap/simple :cli/clap/util :cli/clap/macs :cli/clap/ast
75  :cli/clap/vars))