Я использовал AQtime, и он никогда не подводил меня. Я уверен, что существует пробная версия.
Я не нашел использовать базу 'CGI :: Application'; расширяет 'CGI :: Application';
до ужаса, потому что делает именно то, что вам нужно:
@ISA
содержит 'CGI :: Application'
, что в точности удовлетворяет требованиям использования CGI :: Application :: Plugin :: * extends 'CGI :: Application' обнаруживается строка
, выполняется любая работа (т.е. в вашем классе вызываются методы), которые зависят от работы, выполняемой оператором extends
: что ваш класс происходит от Moose :: Object
, и у вас установлен мета-класс. Тем не менее, решение jrockway также должно работать:
BEGIN { extends 'CGI::Application' }
... где вы получаете все мета-классы Moosey Боже мой, только немного опережая график, когда он вам нужен, и не должно быть слишком раньше графика, при условии, что вы уже звонили , используйте Moose
и используйте MooseX :: NonMoose
для определения extends
.
(Приложение: Теперь я ' m размышляя о дополнительных сложностях создания возможности принудительного синтаксического анализа ключевых слов во время компиляции, которые анализируются немедленно, как если бы они были заключены в блок BEGIN
. например, что-то вроде того, что Moose.pm объявил , используйте время компиляции qw (extends)
. Конечно, это было бы неплохим синтаксическим сахаром.)