GNU.WIKI: The GNU/Linux Knowledge Base

  [HOME] [PHP Manual] [HowTo] [ABS] [MAN1] [MAN2] [MAN3] [MAN4] [MAN5] [MAN6] [MAN7] [MAN8] [MAN9]

  [0-9] [Aa] [Bb] [Cc] [Dd] [Ee] [Ff] [Gg] [Hh] [Ii] [Jj] [Kk] [Ll] [Mm] [Nn] [Oo] [Pp] [Qq] [Rr] [Ss] [Tt] [Uu] [Vv] [Ww] [Xx] [Yy] [Zz]


NAME

       IO::TieCombine - produce tied (and other) separate but combined
       variables

VERSION

       version 1.003

SYNOPSIS

       First, we set up a bunch of access points:

         my $hub = IO::TieCombine->new;

         my $str_ref  = $hub->scalar_ref('x');
         my $fh       = $hub->fh('x');
         my $callback = $hub->callback('x');

         tie my $scalar, $hub, 'x';
         tie local *STDOUT, $hub, 'x';

         tie local *STDERR, $hub, 'err';

       Then we write to things:

         $$str_ref .= 'And ';
         print $fh "now ";
         $callback->('for ');
         $scalar .= 'something ';
         print "completely ";
         warn "different.
";

       And then:

         $hub->combined_contents;    # And now for something completely different.
         $hub->slot_contents('x');   # And now for something completely
         $hub->slot_contents('err'); # different.

       ACHTUNG!!  Because of a serious problem with Perl 5.10.0, output sent
       to a tied filehandle using "say" will not have the expected newline.
       5.10.1 or later is needed.  Since 5.10.0 is broken in so many other
       ways, you should really upgrade anyway.

       ACHTUNG!!  Because of a different problem with Perls 5.10.1 - 5.16.3,
       if you send output to a tied filehandle using "say", and "$\" is
       undefined (which is the default), "$\" will not be restored to "undef"
       after the "say"!  This means that once you've used "say" to print to
       any tied filehandle, you have corrupted the global state of your
       program.  Either start your program by setting "$\" to an empty string,
       which should be safe, or upgrade to 5.18.0.

METHODS

   new
       The constructor takes no arguments.

   combined_contents
       This method returns the contents of all collected data.

   slot_contents
         my $str = $hub->slot_contents( $slot_name );

       This method returns the contents of all collected data for the named
       slot.

   clear_slot
         $hub->clear_slot( $slot_name );

       This sets the slot back to an empty string.

   fh
         my $fh = $hub->fh( $slot_name );

       This method returns a reference to a tied filehandle.  When printed to,
       output is collected in the named slot.

   scalar_ref
         my $str_ref = $hub->scalar_ref( $slot_name );

       This method returns a reference to scalar.  When appended to, the new
       content is collected in the named slot.  Attempting to alter the string
       other than by adding new content to its end will result in an
       exception.

   callback
         my $code = $hub->callback( $slot_name );

AUTHOR

       Ricardo SIGNES <rjbs@cpan.org>

COPYRIGHT AND LICENSE

       This software is copyright (c) 2013 by Ricardo SIGNES.

       This is free software; you can redistribute it and/or modify it under
       the same terms as the Perl 5 programming language system itself.



  All copyrights belong to their respective owners. Other content (c) 2014-2018, GNU.WIKI. Please report site errors to webmaster@gnu.wiki.
Page load time: 0.087 seconds. Last modified: November 04 2018 12:49:43.