ホーム > perl > ファイルPATHを覚えているfhを作成できるIO::File::WithPathをリリース

ファイルPATHを覚えているfhを作成できるIO::File::WithPathをリリース

  • 投稿者: chiba
  • 2009/10/7 水曜日 1:49:30
  • perl

Plackのsendfileサポート関連を追いかけてて、Plack::Server::Apache2でsendfileサポートされてない理由がfhからファイル名を取るベストな方法がないというわけで、gist: 200797みたいなパッチを書いて#http-engineとかに張り付けたけどそれlinuxでしか動かないよねみたいなことで日本の恥を晒してしまったりしてたわけですが、その中でIO::File::WithPathみたいなのがあればいいよねと話がでていたので作ってみました。

CPANgithubにあげてあります。

使い方はこんな感じ。

    my $fh = IO::File::WithPath->new('/path/to/file');
    print $fh->path; # /path/to/fileがとれるよ
    print $fh->getline; # IO::Handleとしても扱える
    print <$fh>; # もちろんGLOBとしても

Plackのappでは

    return ['200', [], IO::File::WithPath->new('/path/to/file')];

みたいな使い方を想定していますが、Plack::Server側はこのモジュールを使うことが前提というわけではなくて、duck typingで->pathがあるオブジェクトであればそのpathを(使える条件であれば)使うようになる予定だと思います。

あと、純粋なfhからpathを取るマルチプラットフォーム対応なモジュールもできれば欲しいよねというところ。windowsはかなり無理っぽい。

はてなブックマーク - ファイルPATHを覚えているfhを作成できるIO::File::WithPathをリリース

コメント:0

コメントフォーム
入力した情報を記憶する

トラックバック:0

この記事のトラックバック URL
https://blog.everqueue.com/chiba/2009/10/07/321/trackback/
トラックバックの送信元リスト
ファイルPATHを覚えているfhを作成できるIO::File::WithPathをリリース - へぼい日記 より

ホーム > perl > ファイルPATHを覚えているfhを作成できるIO::File::WithPathをリリース

検索
フィード
メタ情報

ページの上部に戻る