NAME
Waft::StashAccessor - Make accessor for Waft::stash
SYNOPSIS
package MyWebApp;
use base 'Waft';
use Waft::StashAccessor;
make_stash_accessor('foo');
my $obj = __PACKAGE__->new;
$obj->set_foo('bar'); # same as $obj->stash('MyWebApp')->{foo} = 'bar'
print $obj->get_foo; # same as print $obj->stash('MyWebApp')->{foo}
DESCRIPTION
Waft
の stash
へアクセスするためのメソッドを生成する。引数に stash
の キーとなる文字列を受け取り、そのキーの先頭に set_、get_ を付加した文字列が メソッドの名前となる。
set_* で stash
に格納し、get_ で stash
から取得する。
最後の引数にオプションを指定する事で、値に制約を設ける事ができる。
make_stash_accessor('foo', { minlen => 1 }); # 文字数が 1文字以上である事
$obj->set_foo('bar'); # ok
$obj->set_foo('0'); # ok
$obj->set_foo(''); # not ok
$obj->set_foo(undef); # not ok
制約に違反した場合は例外を発生する。
EXPORT
make_stash_accessor
Arguments: @keys, \%option?
stash
へのアクセサを生成するための関数。引数で指定された 1つのキー、 もしくは複数のキー毎に、setter と getter を生成する。最後の引数がハッシュ変数のリファレンスの場合はオプションとして処理される。 オプション minlen を指定すると、最低長の制約を設ける事ができる。
AUTHOR
Yuji Tamashiro, <yuji@tamashiro.org>
COPYRIGHT AND LICENSE
Copyright (C) 2008 by Yuji Tamashiro
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.