Spec-Zone.ru › Perl 5.36

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–2021 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.36.0/Errno

Spec-Zone.ru

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