Spec-Zone.ru › Perl 5.38

Errno

СОДЕРЖАНИЕ

  • ИМЯ
  • СИНТАКСИС
  • ОПИСАНИЕ
  • ЗАМЕЧАНИЯ
  • АВТОР
  • АВТОРСКИЕ ПРАВА

ИМЯ

Errno — константы системного errno

СИНТАКСИС

use Errno qw(EINTR EIO :POSIX);

ОПИСАНИЕ

Errno определяет и условно экспортирует все константы ошибок, определённые в файле заголовков errno.h вашей системы. У него есть один тег экспорта, :POSIX, который экспортирует все номера ошибок, определённые POSIX.

В Windows, Errno также определяет и условно экспортирует все константы ошибок Winsock, определённые в файле заголовков WinError.h вашей системы. Они включены во втором теге экспорта, :WINSOCK.

Errno также делает %! магию, таким образом, что каждый элемент %! имеет ненулевое значение только в том случае, если $! установлено на это значение. Например:

my $fh;
unless (open($fh, "<", "/fangorn/spouse")) {
    if ($!{ENOENT}) {
        warn "Get a wife!\n";
    } else {
        warn "This path is barred: $!";
    } 
} 

Если указанная константа EFOO отсутствует в системе, $!{EFOO} возвращает "". Вы можете использовать exists $!{EFOO} для проверки доступности константы в системе.

Perl автоматически загружает Errno при первом использовании %!, поэтому вам не нужен явный use.

ЗАМЕЧАНИЯ

Импорт конкретной константы может быть не очень переносимым, потому что импорт не удастся на платформах, не имеющих этой константы. Более переносимый способ установить $! в допустимое значение — использовать:

if (exists &Errno::EFOO) {
    $! = &Errno::EFOO;
}

АВТОР

Graham Barr <gbarr@pobox.com>

АВТОРСКИЕ ПРАВА

Авторские права (c) 1997-8 Graham Barr. Все права защищены. Эта программа — свободное программное обеспечение; вы можете перераспределять её и/или изменять её в соответствии с теми же условиями, что и Perl сам по себе.

© 1993–2023 Larry Wall and others
Licensed under the GNU General Public License version 1 or later, or the Artistic License.
The Perl logo is a trademark of the Perl Foundation.
https://perldoc.perl.org/5.38.0/Errno

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API