Могу ли я экспортировать константы, созданные с помощью enum :: fields в perl? - PullRequest
1 голос
/ 08 июля 2019

Можно ли экспортировать константы, созданные с помощью enum::fields?Например:

package XLine {
    use enum::fields qw{VAL SLOPE INTERVAL};
    use parent qw(Exporter);

    our @EXPORT = qw(VAL SLOPE INTERVAL);

    sub new {
    my $class = shift;
    my $self = bless [], $class;
    return($self);
    }
}

my $x = XLine->new();

printf("INTERVAL = %d\n", INTERVAL);

Есть ли другой «постоянный» пакет, который я должен использовать вместо этого?Я использовал этот, потому что я прочитал, что это было быстро, здесь: http://neilb.org/reviews/constants.html

1 Ответ

1 голос
/ 08 июля 2019

enum :: fields не является проблемой здесь. Код работает, когда вы добавляете XLine->import(qw(INTERVAL)); или, более реалистично / следуя лучшим рекомендациям, перемещаете пакет XLine в свой собственный файл .pm.

...