ユーザー定義関数
|
関数nameを定義する。 関数nameが呼び出されると、 statement部が子プロセスとして実行される。 labelを指定すると、引数用変数または配列にラベルを設定することができる。10個まで指定できる。 labelの前に&を記述すると、コマンド:param n 1の機能をする。また、labelの後ろに[]を記述すると、引数用配列にラベル設定する。例えば、 func test a &b c[] : は、 func test :label a @0 :label b @1 :param 1 1 :label c @@2 : と同等の機能をする。 |
1)ユーザー定義関数は、現在のプロセス内と、同レベルのユーザー定義関数内で、有効である。これは、再帰呼び出し、あるいは次のような記述が可能であることを意味する。
func test1 : endfunc func test2 test1 endfunc
2)ユーザー定義関数内で、ユーザー定義関数の定義はできない。
3)ユーザー定義関数内での、親プロセスから渡されたパラメータの参照方法は、外部関数の場合と同じである。(「外部関数」の章を参照)
4)ユーザー定義関数内では、親プロセスでコマンド:defineにより定義された定数を参照できる。