fml8 で必要なメソッドの型

メソッドの型は、 get_next_key() のように引数なしか STR を引数にし STR を返り値にしています。 これは、 ファイルの一覧を見るとか、 特定のアドレスに対する何かの値を取り寄せる、 といった操作がよく使われるためです。

しかし、特定のアドレスに対する値が組になっている返り値もあります。 これは

KEY_STR => [
     VALUE_STR_1
     VALUE_STR_2
     VALUE_STR_3
]
のようなデータ構造が返ってくることを期待する場合です。 たとえば fml4 の actives はメールアドレスに対していくつかのオプションの値を記述するので、 こういったデータ構造と考えられます。
 
例

rudo@nuinui.net	s=skip m=xxx.yyy.z # commnet

rudo@nuinui.net => [
        s=skip
        m=xxx.yyy.z
        # comment
]

まとめると引数は「ない」か「STR」(正規表現も文字列の一種)なので STR とひとまとめにしても良いでしょう。 一方、返り値は STR か ARRAY_REF になります。

引数    返り値
---------------------------------------
なし => STR

STR  => STR

なし => [STR, STR, ... ]

STR  => [STR, STR, ... ]

fml 8.0 (fml-devel) project homepage is www.fml.org/software/fml8/.
fml 4.0 project homepage is www.fml.org/software/fml4/.
about one floppy bsd routers, see www.bsdrouter.org/.
other free softwares are found at www.fml.org/software/.

author's homepage is www.fml.org/home/fukachan/.
Also, visit nuinui's world :) at www.nuinui.net.

For questions about FML, e-mail <fml-bugs@fml.org>.