これが、最も複雑なメタコメントです。プロシージャでサポートされる必須またはオプションの各引数を、1 行で指定します。オプションの引数は、角かっこ ([ ]) で囲む必要があります。値を指定する必要のある引数には、リテラル テキスト <arg>
を追加し、値を指定する必要があることをユーザーに示し、説明部分に有効な値を説明する必要があります。ユーザーがオプションの引数を指定しない場合に使用されるデフォルト値を指定することも可能です。値のないオプションの引数 (フラグ) も可能です。コマンド ラインでこれらのフラグを使用すると、値は True であると想定され、アプリでそのオプションで指定される操作が実行されます。ただし、フラグ名に接頭辞 no_
が付いている場合 (-no_cleanup
など)、値は False であると想定され、デフォルトで実行される操作が実行されなくなります。
位置指定引数を指定することもできます。位置指定引数は、対応するフラグ (-arg1
など) なしで値のみを指定するものです。
たとえば、次のようなメタコメントがあるとします。
# Argument Usage:
# timingPath : mandatory name
# [-append]: optional flag
# -cell <arg>: mandatory argument with no default value
# [-template <arg> = stub]: optional argument with a default value. The default
value is: stub
これにより、次のようなヘルプ メッセージが生成されます。
Syntax:
mycompany::template::mycommand [-append] -cell <arg> [-template <arg>]
[-quiet] [-verbose] <timingPath> <-name>
Returns:
template in the case of -return_string, otherwise 0 TCL_ERROR if error
Usage:
Name Description
-------------------------
[-append] optional flag
Default: 0
-cell mandatory argument with no default value
[-template] optional argument with a default value. The default value is:
stub
Default: stub
[-quiet] Ignore command errors
[-verbose] Suspend message limits during command execution
<timingPath> mandatory
コマンド ライン引数の実際の処理は、プロシージャ内でプログラムとして実行する必要があります。
注記:
-append
の使用はオプションで、デフォルト値は 0 です。コマンド ラインで -append
オプションを指定すると、システムから 1 が返されます。