コマンド行から簡単に new してメソッドを試したい、タブ補完もしたい…MouseX::OO_Modulino と関連モジュールのご紹介 by hkoba

YAPC::Fukuoka 2025
採択
2025/11/15 15:30〜
Track A
【11月15日】ライトニングトーク(5分)

コマンド行から簡単に new してメソッドを試したい、タブ補完もしたい…MouseX::OO_Modulino と関連モジュールのご紹介

hkoba hkoba hkoba

Perl でモジュールを開発するとき、書いたメソッドをさっと試したくなって、コマンド行で↓このようなワンライナーを書いた経験はないでしょうか?

perl -I$PWD/lib -le 'use MyClass; use Data::Dumper; print Dumper(MyClass->new(foo => [3,4,5])->bar({baz => 8}))'

これがもし、↓このように書くだけで試せたら、便利だと思いませんか?

./lib/MyClass.pm --foo='[3,4,5]' bar '{"baz": 8}'

更にもし、↑ --foo の attribute 名や bar のメソッド名にコマンド行補完が効けば、色々と捗りそうだと思いませんか?

この LT では、これを可能にするためのモジュール MouseX::OO_Modulino と Zsh の補完ヘルパー App::oo_modulino_zsh_completion_helper についてご紹介させてください。