NAME
IOMux::Open - simulate the open() function
SYNOPSIS
# pipe for reading
my
$who
=
$mux
->
open
(
'-|'
,
'who'
,
'am'
,
'i'
);
<
$who
>;
# two-way connection (like IPC::Open3)
my
$echo
=
$mux
->
open
(
'=|'
,
'cat'
);
# file
my
$pw
=
$mux
->
open
(
'<'
,
'/etc/passwd'
);
my
@noshell
=
grep
/\:$/, <
$pw
>;
DESCRIPTION
This module is a simple wrapper to bring various alternative connection implementations closer to normal Perl. It also saves you a lot of explicit require (use
) lines of code.
With this module, code is simplified. For instance, the real logic is:
use
IOMux::Pipe::Read;
my
$who
= IOMux::Pipe::Read->new
(
run_shell
=> [
'who'
,
'am'
,
'i'
]
);
$mux
->add(
$who
);
<
$who
>;
In the short syntax provided with this module:
You only need to use
one ::Open
module with some parameter, in stead of requiring all long names explicitly. As you can see, the object gets added to the mux as well.
METHODS
Constructors
- IOMux::Open->new($mode, $params)
-
Available MODES are
-| IOMux::Pipe::Read
|- IOMux::Pipe::Write
|-| IOMux::IPC
|=| IOMux::IPC (
with
errors)
> IOMux::File::Write
>> IOMux::File::Write (appendinf)
< IOMux::File::Read
Accessors
SEE ALSO
This module is part of IOMux distribution version 1.01, built on January 15, 2020. Website: http://perl.overmeer.net/CPAN
LICENSE
Copyrights 2011-2020 by [Mark Overmeer <markov@cpan.org>]. For other contributors see ChangeLog.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See http://dev.perl.org/licenses/