タイトルの通り、Perlの型ライブラリのkuraと組み込みのclassを一緒に利用できるようになりました。 オブジェクトと型を近くにおけて、便利なんじゃないかと思います。
利用例はこんな感じです。(上の画像と同じ内容です。)
use v5.40; use experimental 'class'; class Fruit { use Exporter 'import'; use Types::Common -types; # kura meets built-in class! use kura Name => StrLength[1, 255]; field $name :param :reader; ADJUST { Name->assert_valid($name); } } my $fruit = Fruit->new(name => ''); # Error!
Type::Tinyが提供しているType::Library だとこうはできないので、kuraならではの機能です😁
この記事はPerl Advent Calendar 2024 の3日目の記事です。 昨日は、kobakenさんの「 PerlでResult型を扱うResult::Simpleをリリースしました - Blog::kobaken」でした。
明日は、TBDさんです。