NAME
    POE::Filter::KennySpeak - Mmm PfmPpfMpp Mpfmffpmffmpmpppff fmpmfpmmmfmp
    fmppffmmmpppfmmpmfmmmfmpmppfmm fmpppf mmmpppmpm mpfpffppfppm
    PmpmppppppppffmFmmpfmmppmmmpmp

SYNOPSIS
            # A Kennyspeak echo server

            use strict;
            use warnings;
            
        use POE;
            use POE::Component::Server::TCP;
            use POE::Filter::Stackable;
            use POE::Filter::Line;
            use POE::Filter::KennySpeak;
            
        POE::Component::Server::TCP->new(
                Port => 12345,
                ClientInputFilter => POE::Filter::Stackable->new(
                    Filters => [
                            POE::Filter::Line->new(),
                            POE::Filter::KennySpeak->new(),
                    ],
                ),
                ClientOutputFilter => POE::Filter::Line->new(),
                ClientInput => sub {
                  $_[HEAP]{client}->put($_[ARG0]);
                  return;
                },
            );
            
        POE::Kernel->run();
            exit;

DESCRIPTION
    POE::Filter::KennySpeak is a POE::Filter that translates given text to
    and from KennySpeak <http://www.namesuppressed.com/kenny/>.

    It is intended to be used in a stackable filter, POE::Filter::Stackable,
    with POE::Filter::Line.

CONSTRUCTOR
    "new"
        Creates a new POE::Filter::KennySpeak object.

METHODS
    "get"
    "get_one_start"
    "get_one"
        Takes an arrayref which contains lines of text, returns an arrayref
        of lines translated into Kennyspeak.

    "get_pending"
        Returns the filter's partial input buffer.

    "put"
        Takes an arrayref which contains lines of Kennyspeak and returns an
        arrayref of lines translated back to "normal".

    "clone"
        Makes a copy of the filter and clears the buffer of the copy.

AUTHOR
    Chris "BinGOs" Williams <chris@bingosnet.co.uk>

    Based on kenny.pl by:

    Christian Garbs <mitch@cgarbs.de>, http://www.cgarbs.de Alan Eldridge
    <alane@geeksrus.net>

    KennySpeak invented by Kohan Ikin <syneryder@namesuppressed.com>
    http://www.namesuppressed.com/kenny/

LICENSE
    Copyright "(c)" 2008 Chris Williams, Christian Garbs and Alan Eldridge

    This module may be used, modified, and distributed under the same terms
    as Perl itself. Please see the license that came with your Perl
    distribution for details.

SEE ALSO
    POE::Filter

    POE::Filter::Stackable

    <http://www.cgarbs.de/kenny.en.html>

    <http://www.namesuppressed.com/kenny/>

