Test2::Util::ExternalMeta - 允許第三方工具安全地將元資料附加到您的執行個體。
這個套件讓您可以定義一個明確且一致的方式,以允許第三方工具將元資料附加到您的執行個體。如果您的物件使用這個套件並匯入其方法,那麼第三方元資料就有安全的地方可以存放。
package My::Object;
use strict;
use warnings;
use Test2::Util::ExternalMeta qw/meta get_meta set_meta delete_meta/;
...
現在開始使用
my $inst = My::Object->new;
$inst->set_meta(foo => 'bar');
my $val = $inst->get_meta('foo');
這個套件假設您的執行個體是已祝福的雜湊參考,如果不是,它將無法運作。它會將所有元資料儲存在物件雜湊的 _meta
金鑰中。如果您的物件在其底層雜湊中使用 _meta
金鑰,那麼就會發生衝突,您無法使用這個套件。
這將取得指定 meta $key
的值。通常,當 $key
沒有值時,這將傳回 undef
,但是,當沒有設定值時,您可以指定一個 $default
值來設定。
這將取得指定 meta $key
的值。這沒有 meta()
的 $default
負擔。
這將移除指定 meta $key
的值。舊的 $val
將會傳回。
設定指定 meta $key
的值。
Meta 鍵必須定義,並且在用作布林值時必須為 true。鍵不能是參考。您可以將參考 "$ref"
字串化以用作鍵,但此套件不會為您字串化。
Test2 的原始碼存放庫可以在 http://github.com/Test-More/test-more/ 找到。
版權所有 2020 Chad Granum <exodist@cpan.org>。
此程式是自由軟體;您可以根據 Perl 本身的相同條款重新散布或修改它。
請參閱 http://dev.perl.org/licenses/