:super propertied-object
:slots flaglst docstring parsed-p
:init &key prog description epilog (add-help t) [メソッド]
:add-argument flags &key (action :store) const default choices check read required help dest [メソッド]
flag は "-foo" や "-b" の引数オプションを定義する。 引数は'("-bar" "-b")等のリストで与えることも可能である。
action はプログラムに引数が渡されたときの挙動を指定する。 現在サポートされているaction は :store, :store-true, :store-false, :store-const, :append, そしてカスタム関数である。 help はヘルプドキュメントを指定する。 ほとんどのパラメータはhttps://docs.python.org/3/library/argparse.htmlに習って設計されている。
argument-parserのサンプルプログラムを以下に示す。
(require :argparse "argparse.l") (defvar argparse (instance argparse:argument-parser :init :description "Program Description (optional)")) (send argparse :add-argument "--foo" :default 10 :read t :help "the foo description") (send argparse :add-argument '("--bar" "-b") :action :store-true :help "the bar description") (send argparse :parse-args) (format t "foo: ~A~%" (send argparse :foo)) (format t "bar: ~A~%" (send argparse :bar)) (exit)
このサンプルプログラムを実行したときの出力は以下のようになる。
$ eus argparse-example.l foo: 10 bar: t $ eus argparse-example.l --foo=100 --bar foo: 100 bar: t $ eus argparse-example.l -h usage: [-h] [--foo=FOO] [-b] Program Description (optional) optional arguments: -h, --help show this help message and exit --foo=FOO the foo description (default: 10) -b, --bar the bar description