Size: a a a

2020 December 15

OP

Oleg Pronin in Modern::Perl
my $orig = \&Catalyst::Engine::finalize_cookies;

{
   no warnings "redefine”;
    *Catalyst::Engine::finalize_cookies = sub {
   code...
    $orig->(args);
};

}
источник

OP

Oleg Pronin in Modern::Perl
В каталисте настраивается engine class, можно взять тот что установлен, сделать наследника в рантайме, установить назад, и в наследнике перекрыть метод
источник

OP

Oleg Pronin in Modern::Perl
Если без быдлокодов которые выше приведены
источник

K

Kolunchik in Modern::Perl
Василий Степанович Родин
Позавчера гугл падал. Вчера изменил правила. Что день грядущий нам готовит? 😮
Порнхаб половину роликов стёр
источник

SR

Stas Raskumandrin in Modern::Perl
Oleg Pronin
Если без быдлокодов которые выше приведены
)
источник

SZ

Sergey Zhmylove in Modern::Perl
Oleg Pronin
Если без быдлокодов которые выше приведены
Наследник в рантайме -- тоже быдлокод :р
источник

OP

Oleg Pronin in Modern::Perl
В перле все в рантайме
источник

OP

Oleg Pronin in Modern::Perl
А вообще такая методика называется применить роль. И это точно не быдлокод)
источник

AK

Andrey Konovalov in Modern::Perl
Товарищи, подскажите, а для tr/// замены адекватной, позволяющей указывать map'ы в рантайме, так и не существует или я что-то упустил из виду?
источник

AK

Andrey Konovalov in Modern::Perl
Поискал XS-ные пакеты - один Char::Replace и только ASCII. Печаль какая-то
источник

AK

Andrey Konovalov in Modern::Perl
Ещё вопрос вдогонку: для либ, использующих AnyEvent внутри и принимающих коллбеки соотв.-но - как Unit-тестироваться лучше? Не Test::More же?
На второй вопрос нашёл ответ, исходно гуглил просто неправильно: http://pragmaticperl.com/issues/15/pragmaticperl-15-%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5-%D1%82%D0%B5%D1%81%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BF%D0%BE%D0%B4-anyevent.html
источник

SZ

Sergey Zhmylove in Modern::Perl
Oleg Pronin
В перле все в рантайме
Смотря что называть рантаймом. Я говорю про RUN
источник

VG

Vadim Goncharov in Modern::Perl
basiliscos
https://asciinema.org/a/PAkUxEPD8kekD4mH6Rhj8VmLn

вполне норм однострочный TUI вышел, без ncurses. Должно вполне хватить для моих целей (необязательных вопросов/ответов, индикации статуса, прогресса и т.п.)
пока выглядит как обычный cli
источник

ПК

Павел Колганов ☭... in Modern::Perl
Andrey Konovalov
Товарищи, подскажите, а для tr/// замены адекватной, позволяющей указывать map'ы в рантайме, так и не существует или я что-то упустил из виду?
О, только хотел вопрос Ярослава задать, а ты уже. Может развернуть?
источник

SZ

Sergey Zhmylove in Modern::Perl
Andrey Konovalov
Товарищи, подскажите, а для tr/// замены адекватной, позволяющей указывать map'ы в рантайме, так и не существует или я что-то упустил из виду?
Что ты имеешь ввиду? Что хочешь сделать?
источник

ПК

Павел Колганов ☭... in Modern::Perl
Sergey Zhmylove
Что ты имеешь ввиду? Что хочешь сделать?
Андрей, видимо, пытался вопрос поставить шире. Попробую оригинал сформулировать:

Есть задача транслитерировать по динамическому шаблону tr/$from/$to/. Perldoc говорит eval "tr/$from/$to/".
Код прогоняется Perl::Critic. Политика ProhibitStringyEval запрещает такие eval, как небезопасные.
Мы с коллегой с ходу решения лучше, чем сделать модуль для всяких хаков (с исключением из проверки) и запихнуть туда функцию обертку над eval(tr/$from/$to/) не придумали.
Может быть, есть другие решения?
источник

VG

Vadim Goncharov in Modern::Perl
Павел Колганов ☭
Андрей, видимо, пытался вопрос поставить шире. Попробую оригинал сформулировать:

Есть задача транслитерировать по динамическому шаблону tr/$from/$to/. Perldoc говорит eval "tr/$from/$to/".
Код прогоняется Perl::Critic. Политика ProhibitStringyEval запрещает такие eval, как небезопасные.
Мы с коллегой с ходу решения лучше, чем сделать модуль для всяких хаков (с исключением из проверки) и запихнуть туда функцию обертку над eval(tr/$from/$to/) не придумали.
Может быть, есть другие решения?
ну, если критик с этой проверкой нужен, то только так
источник

IB

Ivan Bessarabov in Modern::Perl
Павел Колганов ☭
Андрей, видимо, пытался вопрос поставить шире. Попробую оригинал сформулировать:

Есть задача транслитерировать по динамическому шаблону tr/$from/$to/. Perldoc говорит eval "tr/$from/$to/".
Код прогоняется Perl::Critic. Политика ProhibitStringyEval запрещает такие eval, как небезопасные.
Мы с коллегой с ходу решения лучше, чем сделать модуль для всяких хаков (с исключением из проверки) и запихнуть туда функцию обертку над eval(tr/$from/$to/) не придумали.
Может быть, есть другие решения?
скорость работы важный фактор?
источник

ПК

Павел Колганов ☭... in Modern::Perl
Ivan Bessarabov
скорость работы важный фактор?
Думаю, что не критичный. Если не две замены в секунду, конечно.
источник

IB

Ivan Bessarabov in Modern::Perl
Павел Колганов ☭
Думаю, что не критичный. Если не две замены в секунду, конечно.
разрезать $from на символы, положить в ключи хеша, $to разрезать на символы и положит в качестве значенией. бежать руками по строке и менять
источник