NAME
IPC::PrettyPipe::Stream::Utils - support utilities for streams
VERSION
version 0.06
SYNOPSIS
use IPC::PrettyPipe::Stream::Utils qw[ parse_spec ];
$opc = parse_spec( $op );
DESCRIPTION
Stream Specification
A stream specification is a string which may take one of the forms in the Spec column:
Spec Op Mode File Function
---- --- ---- ---- -----------------------
< < I y read from file via fd 0
<N < I y read from file via fd N
> > O y write to file via fd 1
>N > O y write to file via fd N
>& >& O n redirect fd 2 to fd 1
&> &> O n redirect fd 2 to fd 1
N<&- <&- ? n close fd N
M<&N <& I n dup fd M as fd N
N>&M >& O n dup fd M as fd N
where
M and N are integers indicating file descriptors
Mode
indicates input (I), output (O), or not applicable (?)File
indicates whether an additional parameter with a file name is required.
Any resemblance to stream operators used by IPC::Run is purely non-coincidental.
FUNCTIONS
IPC::PrettyPipe::Stream::Utils exports the following functions upon request:
- parse_spec
-
$components = parse_spec( $spec )
Parse a stream specification into components Op, N, and M. Returns a hashref with the information indexed by the component names.
If the specification indicates that additional parameters are required (such as the name of a file to be read or written to), the key
param
will be set.
BUGS
Please report any bugs or feature requests on the bugtracker website https://rt.cpan.org/Public/Dist/Display.html?Name=IPC-PrettyPipe or by email to bug-IPC-PrettyPipe@rt.cpan.org.
When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.
SOURCE
The development version is on github at https://github.com/djerius/ipc-prettypipe and may be cloned from git://github.com/djerius/ipc-prettypipe.git
SEE ALSO
Please see those modules/websites for more information related to this module.
AUTHOR
Diab Jerius <djerius@cpan.org>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2018 by Smithsonian Astrophysical Observatory.
This is free software, licensed under:
The GNU General Public License, Version 3, June 2007