python decorator - like route

python/decoratorを使うと、便利過ぎて、他の言語で辛くなると聞く。それを言い訳に避けてきたともいう。

どこかで見た、下のような表記を実現したい。decoratorをあまり理解できていないが、とりあえず出力は得られたのでメモ。

@route
class index:

@route('/-/(\w+)/?')
class command:

## result: ('/', 'index', '/-/(\w*)/?', 'command')

ソースは必要最低限。エラー処理はないので型などは後ほど。致命的な間違いもあるかも。

用途は、result(=application.run())の示すタプルで予想付くかと。web.pyなどでより楽できればと。