[Moscow.pm] Feature discussion: lvalue
Dmitry Karasik
dmitry на karasik.eu.org
Сб Апр 5 09:11:46 PDT 2008
Hi Vladimir!
On 05 ÁÐÒ 08 at 09:25, "Vladimir" (Vladimir V Perepelitsa) wrote:
Vladimir> õ ÍÅÎÑ ÔÕÔ ×ÏÚÎÉËÌÁ ÍÙÓÌØ: ËÁË ÍÏÖÎÏ ÂÙÌÏ-ÂÙ ÒÅÁÌÉÚÏ×ÁÔØ lvalue,
Vladimir> ...
Vladimir> ÁÒÇÕÍÅÎÔÁÍÉ. ô.Å. ÐÒÉ accessor() = 10; ×ÙÚÙ×ÁÅÔÓÑ ANON->(10);
÷ ÌÏÂ ÎÅ ÐÏÌÕÞÉÔÓÑ Ô.Ë. ÐÁÒÓÅÒ ÓËÁÖÅÔ "Can't modify reference constructor
in lvalue subroutine return". üÔÏ ÍÏÖÎÏ ÏÂÏÊÔÉ ÅÓÌÉ ×ÍÅÓÔÏ ANON ×ÏÚ×ÒÁÝÁÔØ
ÏÂßÅËÔ ÐÒÉ×ÑÚÁÎÎÙÊ Ë ANON, Õ ËÏÔÏÒÏÇÏ ÐÅÒÅÇÒÕÖÅÎ ÏÐÅÒÁÔÏÒ ÐÒÉÓ×ÁÉ×ÁÎÉÑ,
ÐÒÉÍÅÒÎÏ ÔÁË:
sub TIESCALAR { bless $_[1], __PACKAGE__ }
sub FETCH { ${ $_[0]-> () } }
sub STORE { ${ $_[0]-> () } = $_[1] }
my $var;
sub accessor : lvalue {
my $t;
tie $t, __PACKAGE__, sub { \$var };
$t;
}
accessor = 42;
warn $var;
--
Sincerely,
Dmitry Karasik
Подробная информация о списке рассылки Moscow-pm