IO-Tty
view release on metacpan - search on metacpan
view release on metacpan or search on metacpan
$class = ref($class) if ref($class);
@_ <= 1 or croak 'usage: new $class';
my ( $ptyfd, $ttyfd, $ttyname ) = pty_allocate();
croak "Cannot open a pty" if not defined $ptyfd;
my $pty = $class->SUPER::new_from_fd( $ptyfd, "r+" );
croak "Cannot create a new $class from fd $ptyfd: $!" if not $pty;
$pty->autoflush(1);
bless $pty => $class;
my $slave = IO::Tty->new_from_fd( $ttyfd, "r+" );
croak "Cannot create a new IO::Tty from fd $ttyfd: $!" if not $slave;
$slave->autoflush(1);
${*$pty}{'io_pty_slave'} = $slave;
${*$pty}{'io_pty_ttyname'} = $ttyname;
${*$slave}{'io_tty_ttyname'} = $ttyname;
return $pty;
view all matches for this distributionview release on metacpan - search on metacpan
( run in 0.967 second using v1.00-cache-2.02-grep-82fe00e-cpan-a086c87fca4 )