📄 expire.t
字号:
#!/usr/bin/perluse lib '..';use Memoize;use Memoize::ExpireTest;my $n = 0;print "1..17\n";$n++; print "ok $n\n";my %CALLS;sub id { my($arg) = @_; ++$CALLS{$arg}; $arg;}tie my %cache => 'Memoize::ExpireTest';memoize 'id', SCALAR_CACHE => [HASH => \%cache], LIST_CACHE => 'FAULT';$n++; print "ok $n\n";for $i (1, 2, 3, 1, 2, 1) { $n++; unless ($i == id($i)) { print "not "; } print "ok $n\n";}for $i (1, 2, 3) { $n++; unless ($CALLS{$i} == 1) { print "not "; } print "ok $n\n";}Memoize::ExpireTest::expire(1);for $i (1, 2, 3) { my $v = id($i);}for $i (1, 2, 3) { $n++; unless ($CALLS{$i} == 1 + ($i == 1)) { print "not "; } print "ok $n\n";}Memoize::ExpireTest::expire(1);Memoize::ExpireTest::expire(2);for $i (1, 2, 3) { my $v = id($i);}for $i (1, 2, 3) { $n++; unless ($CALLS{$i} == 4 - $i) { print "not "; } print "ok $n\n";}exit 0;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -