Так что я просто пытаюсь сделать очень простую вещь: определить собственный метод чтения для атрибута лося. Поэтому я пытаюсь это:
has 'compiled_regex' => (
isa => 'RegexpRef',
is => 'rw',
reader => 'get_compiled',
);
но get_compiled
никогда не вызывается, предположительно потому, что compiled_regex
- чтение / запись. Без проблем. Затем я попробую это:
has 'compiled_regex' => (
isa => 'RegexpRef',
writer => '_compile',
reader => 'get_compiled',
);
, и это приводит к следующей ошибке:
Не удается найти метод объекта "compiled_regex" через пакет "PrettyRegex" в строке ../lib/Pretty/Regexs.pm 39.
, которая ссылается на эту строку в методе _ compile
:
$self->compiled_regex(qr/$self->regex/);
Теперь я не выспался последние 3 дня, поэтому, может быть, я запутался, но, похоже, даже если бы это сработало, это вызвало бы бесконечный регресс, поскольку я определил писателя как _compile
... так чего мне здесь не хватает?
попробовал ответить Синану, но все равно получил:
Can't locate object method "compiled_regex" via package "PrettyRegex" at ../lib/Pretty/Regexs.pm line 41.