2013-03-16 5 views
3

Может ли кто-нибудь объяснить мне, для каких целей программисты используют этот вариант «имя пакета», как в этом файле SQLite.pm из DBIx :: Class module? Полный список:Зачем использовать этот странный вариант имени пакета?

package # Hide from PAUSE 
    DBIx::Class::SQLAHacks::SQLite; 

use warnings; 
use strict; 

use base qw(DBIx::Class::SQLMaker::SQLite); 

1; 

Почему имя пакета записывается на другой строке после «пакета»?

ответ

12

Perl не заботится о пробельном и комментариях между package и именем пакета, но PAUSE индексатор делает. Он не будет индексировать пакеты, которые выглядят так. Люди DBIx :: Class не хотят индексировать этот класс.

Другой (более стандартный) способ сделать это: no_index key в файле META.json или META.yml.

1

это законен синтаксис, и я полагаю, что PAUSE (сайт авторы CPAN использовать для загрузки) делают некоторые проверки, что эта конструкция позволяет избежать