GNU Smalltalk のインストールに付属するスクリプトは、次のコードを使用してコマンド ライン引数を解析します。
Smalltalk
arguments: '-h|--help --usage --version'
do: [ :opt :arg |
opt = 'help' ifTrue: [ do something ... ].
opt = 'usage' ifTrue: [ do something ... ].
opt = 'version' ifTrue: [ do something ... ]
]
ifError: [ do something ... ].
]
私を悩ませているのはこれです:
Smalltalk arguments: '-h|--help --usage --version'
そこで何が起こっているのかわかりません。そんなこと知ってる:
Smalltalk arguments
コマンドラインに渡された文字列の配列を返しますが、この場合、メソッドが引数 '-h|--help --usage --version' で呼び出されているようです? この文字列が引数配列とどのように比較され、コマンド ライン スイッチがどのように抽出されるのだろうか? ドキュメントまたは説明へのリンクは非常に価値があります。