Когда мне следует использовать атрибуты подпрограмм?

Я вообще не разбираюсь в атрибутах подпрограмм Perl.

Я никогда не видел их в реальном коде, и perldoc perlsub и атрибуты perldoc не отвечают на мои вопросы:

  • Для чего атрибуты полезны?
  • Для чего нужны они приносят в таблицу то, что еще не представлено в лучших практиках Perl?
  • Существуют ли какие-либо модули CPAN (известные или другие), которые используют атрибуты?

Было бы здорово, если бы кто-нибудь мог составить подробный пример использования атрибутов должным образом.


Для тех, кто невежественен, как я, атрибуты - это параметры после двоеточия в приведенных ниже примерах атрибутов ОБЗОР :

sub foo : method ;
my ($x,@y,%z) : Bent = 1;
my $s = sub : method { ... };

use attributes ();  # optional, to get subroutine declarations
my @attrlist = attributes::get(\&foo);

use attributes 'get'; # import the attributes::get subroutine
my @attrlist = get \&foo;

22
задан Zaid 10 December 2011 в 12:23
поделиться