引数リストに省略記号 (...) を指定することで、XSUB は可変長の引数
リストを持てるようになります。省略記号のこの使い方は、ANSI C のものと同
様です。xsubpp コンパイラが、すべてのXSUB に用意している変数 items を調
べることで、XSUB に渡された引数の数を知ることができます。この仕組みを使っ
て、大きさのわからない引数のリストを受け取る XSUB を作ることができます。
rpcb_gettime() XSUB の host 引数は省略できますから、XSUB が可変個
数の引数をとれることを示すために、省略記号を使うことができます。Perl は、
この XSUB を次のどちらかの形式で呼び出すことができます。
$status = rpcb_gettime( $timep, $host ); $status = rpcb_gettime( $timep );
省略記号を持つ XS コードです。
bool_t
rpcb_gettime(timep, ...)
time_t timep = NO_INIT
CODE:
{
char *host = "localhost";
if( items > 1 )
host = (char *)SvPV(ST(1), na);
RETVAL = rpcb_gettime( host, &timep );
}
OUTPUT:
timep
RETVAL
Go to the first, previous, next, last section, table of contents.