日記のコードをまた書き直した

Nobuo Danjou
2011-06-13T23:24:41+0900

いろいろグダグダになってしまった。そろそろ動いてよ。

→うごいたぁああああ。

my $res = do {
    given ($req->path_info) {
        when (m{^/writer(/(?<id>\d+)?|)$}) { 
            if ($req->method eq 'POST') {
                $self->writer_post($req, $+{id});
            } else {
                $self->writer_get($req, $+{id});
            }
        }
        when (m{^/$}) { $self->page($req, 1) }
        when (m{^/page/(?<page>\d+)$}) { $self->page($req, $+{page}) }
        when (m{^/entry/(?<id>\d+)$}) { $self->entry($req, $+{id}) }
        when (m{^/feed$}) { $self->feed($req) }
        default { $req->not_found() }
    }
};

というようなコードが5.14.0では$resに値が入るけど、5.12.3では値が入らなかった。そもそもそのディスパッチの仕方がイモ臭いとか言わないで〜