Mercurial > pub > Impl
view Lib/IMPL/Code/MethodCache.pm @ 170:b88b7fe60aa3
refactoring
author | sourcer |
---|---|
date | Tue, 24 May 2011 01:11:16 +0400 |
parents | c2aa10fbb396 |
children |
line wrap: on
line source
package IMPL::Code::MethodCache; use strict; use IMPL qw(Debug); my %cachedMethods; sub dbgBuildCachedMethod { my ($class,$method,$prefix,$mappers)= @_; no strict 'refs'; $prefix ||= 'call'; my $proxyMethod = "$prefix$method"; die new IMPL::Exception("A proxy method already exists") if *{"${class}::$proxyMethod"}{CODE}; my @methodCache = cacheMethod($class,$method,$mappers); *{"${class}::$proxyMethod"} = sub { $_->(@_) foreach @methodCache; } } sub cacheMethod { my ($class,$method,$mappers) = @_; } 1;