namazu-dev(ring)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: supported document



<199908261019.TAA22698@xxxxxxxxxxxxxx>の記事において
satoru-t@xxxxxxxxxxxxxxxxxxさんは書きました。

>> ところで、supported.pl は ./configure 時に作成されるため、 
>> ./configure 時に gzip コマンドがなく、かつ、 ./configure 後
>> に Comress::Zlib モジュールをインストールすると、
>> 
>>      "application/x-gzip"        => "no",
>> 
>> の値が食い違ってしまいます。どうしましょう? (あきらめるしか
>> ないような…)

  ちょっと考えてみたのですが、個々のfilterモジュールで利用の可否を得ら
れるような関数を作成し、それを起動時に一通り呼び出して%supportedを生成
する方がよりsmartな気がしてきました。疑似コードで示すと以下のような感
じです。この方法なら後から動的にfilterを追加することもできそうです。

  for my $filter (@filterlist) {
    my ($mediatype, $status);
    require "$filter.pl";
    eval "\$mediatype = $filter::mediatype();";
    eval "\$status = $filter::status();";
    $supported{$mediatype} = $status;
  }

# 作業をしてもらってからこんなことを言うのはちょっと心苦しいのですが...
-- 
野首 貴嗣
E-mail: knok@xxxxxxxxxxxxx (private)
        nokubi@xxxxxxxxx (official)