URI::Template::Restrict をリリースしました

URI-Template-Restrict-0.06 - restricted URI Templates handler - metacpan.org

背景

  • URI::Template 0.14_01 は draft-03 相当
    • でも deparse (= extract) できない
    • {-opt}, {-neg} といった op があるので非可逆だということが一因
  • URI::Template 0.13 は expansion の正規表現も結構甘い
    • 不必要な部分までマッチすることがある

ということで制限付きの URI::Template が欲しくなった

方針

  • expansion 判定の精度を上げる
  • あらゆる意味できわどい op は実装しない

できること

  • {var}, {-prefix}, {-suffix}, {-join}, {-list} の process()
  • {var}, {-prefix}, {-suffix}, {-join}, {-list} の extract()

{-opt}, {-neg} は今のところ実装してません