Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » Perl: вынуть анонимную функцию-аргумент наружу

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

involute

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как низко и громко пал я всем своим складом ума за некоторое время простоя в Perl-программировании! Выручайте!
 Здесь приводится очень небольшой и в целом понятный код функции рекурсивного обхода вложенных папок с последующим однострочным примером вызова (осуществляется вывод списка всех найденных папок и файлов). Всё бы ничего, да только понадобилось мне вытащить наружу из

Код:
dir_walk('.', sub{ print $_[0], "\n"}, sub{ print $_[0], "\n"})

эти самые анонимки

Код:
sub{ print $_[0], "\n"}

Нечто подобное я с лёгкостью проделывал множество раз, но именно здесь столкнулся с проблемой корректной передачи $_[0]. Предыдущий опыт тут не помог.
 Будьте добры, помогите причесать подо что-то вроде этого:

Код:
 
dir_walk('.', &filef(...), &dirf(...));
 
sub filef {
    ...
    print $_[0], "\n";
#    return ...
}
 
sub dirf {
    ...
    print $_[0], "\n";
#    return ...
}
 

 Разумеется, мне простого вывода списка папок и файлов будет мало, я собираюсь кодировать нечто более сложное - тогда, видимо, придётся делать return'ы из этих вынесенных во вне бывших анонимок...
 
Добавлено:
 Осилил!
 Всем спасибо, я знал, что морально вы со мной.

Всего записей: 130 | Зарегистр. 16-08-2007 | Отправлено: 10:24 23-03-2014 | Исправлено: involute, 11:19 23-03-2014
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Интернет » Web-программирование » Perl: вынуть анонимную функцию-аргумент наружу


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru