Read-only release history for POE-Filter-IRCD
Perl
Switch branches/tags
stable gitpan_version/2.44 gitpan_version/2.42 gitpan_version/2.40 gitpan_version/2.38 gitpan_version/2.36 gitpan_version/2.35 gitpan_version/2.34 gitpan_version/2.32 gitpan_version/2.31 gitpan_version/2.30 gitpan_version/2.2 gitpan_version/2.1 gitpan_version/2.0 gitpan_version/1.9 gitpan_version/1.8 gitpan_version/1.7 gitpan_version/1.6 gitpan_version/1.5 gitpan_version/1.4 gitpan_version/1.3 gitpan_version/1.2 gitpan_version/1.1 gitpan_version/1.0 cpan_version/2.44 cpan_version/2.42 cpan_version/2.40 cpan_version/2.38 cpan_version/2.36 cpan_version/2.35 cpan_version/2.34 cpan_version/2.32 cpan_version/2.31 cpan_version/2.30 cpan_version/2.2 cpan_version/2.1 cpan_version/2.0 cpan_version/1.9 cpan_version/1.8 cpan_version/1.7 cpan_version/1.6 cpan_version/1.5 cpan_version/1.4 cpan_version/1.3 cpan_version/1.2 cpan_version/1.1 cpan_version/1.0 cpan_path/BINGOS/POE-Filter-IRCD-2.44.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-2.42.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-2.40.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-2.38.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-2.36.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-2.35.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-2.34.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-2.32.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-2.31.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-2.30.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-2.2.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-2.1.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-2.0.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-1.9.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-1.8.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-1.7.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-1.6.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-1.5.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-1.4.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-1.3.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-1.2.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-1.1.tar.gz cpan_path/BINGOS/POE-Filter-IRCD-1.0.tar.gz BINGOS
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
examples
lib/POE/Filter
t
Changes
LICENSE
MANIFEST
META.json
META.yml
Makefile.PL
README
dist.ini

README

NAME
    POE::Filter::IRCD - A POE-based parser for the IRC protocol

VERSION
    version 2.44

SYNOPSIS
        use POE::Filter::IRCD;

        my $filter = POE::Filter::IRCD->new( debug => 1, colonify => 0 );
        my $arrayref = $filter->get( [ $hashref ] );
        my $arrayref2 = $filter->put( $arrayref );

        use POE qw(Filter::Stackable Filter::Line Filter::IRCD);

        my ($filter) = POE::Filter::Stackable->new();
        $filter->push( POE::Filter::Line->new( InputRegexp => '\015?\012', OutputLiteral => "\015\012" ),
                       POE::Filter::IRCD->new(), );

DESCRIPTION
    POE::Filter::IRCD provides a convenient way of parsing and creating IRC
    protocol lines. It provides the parsing engine for
    POE::Component::Server::IRC and POE::Component::IRC. A standalone
    version exists as Parse::IRC.

CONSTRUCTOR
    "new"
        Creates a new POE::Filter::IRCD object. Takes two optional
        arguments:

          'debug', which will print all lines received to STDERR;
          'colonify', set to 1 to force the filter to always colonify the last param passed in a put(),
                      default is 0. See below for more detail.

METHODS
    "get_one_start"
    "get_one"
    "get_pending"
    "get"
        Takes an arrayref which is contains lines of IRC formatted input.
        Returns an arrayref of hashrefs which represents the lines. The
        hashref contains the following fields:

          prefix
          command
          params ( this is an arrayref )
          raw_line

        For example, if the filter receives the following line, the
        following hashref is produced:

          LINE: ':moo.server.net 001 lamebot :Welcome to the IRC network lamebot'

          HASHREF: {
                        prefix   => ':moo.server.net',
                        command  => '001',
                        params   => [ 'lamebot', 'Welcome to the IRC network lamebot' ],
                        raw_line => ':moo.server.net 001 lamebot :Welcome to the IRC network lamebot',
                   }

    "put"
        Takes an arrayref containing hashrefs of IRC data and returns an
        arrayref containing IRC formatted lines. Optionally, one can specify
        'colonify' to override the global colonification option. eg.

          $hashref = {
                        command => 'PRIVMSG',
                        prefix => 'FooBar!foobar@foobar.com',
                        params => [ '#foobar', 'boo!' ],
                        colonify => 1, # Override the global colonify option for this record only.
                      };

          $filter->put( [ $hashref ] );

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

    "debug"
        With a true or false argument, enables or disables debug output
        respectively. Without an argument the behaviour is to toggle the
        debug status.

SEE ALSO
    POE

    POE::Filter

    POE::Filter::Stackable

    POE::Component::Server::IRC

    POE::Component::IRC

    Parse::IRC

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

COPYRIGHT AND LICENSE
    This software is copyright (c) 2013 by Chris Williams and Jonathan
    Steinert.

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