File Coverage

blib/lib/POE/Filter/IRC.pm
Criterion Covered Total %
statement 18 18 100.0
branch n/a
condition n/a
subroutine 6 6 100.0
pod 1 1 100.0
total 25 25 100.0


line stmt bran cond sub pod time code
1             package POE::Filter::IRC;
2             our $AUTHORITY = 'cpan:HINRIK';
3             $POE::Filter::IRC::VERSION = '6.93';
4 2     2   1699 use strict;
  2         4  
  2         51  
5 2     2   8 use warnings FATAL => 'all';
  2         4  
  2         47  
6 2     2   478 use POE::Filter::Stackable;
  2         1862  
  2         44  
7 2     2   462 use POE::Filter::IRCD;
  2         1549  
  2         38  
8 2     2   457 use POE::Filter::IRC::Compat;
  2         3  
  2         191  
9              
10             sub new {
11 1     1 1 887 my ($package, %opts) = @_;
12 1         3 $opts{lc $_} = delete $opts{$_} for keys %opts;
13             return POE::Filter::Stackable->new(
14             Filters => [
15             POE::Filter::IRCD->new( DEBUG => $opts{debug} ),
16 1         6 POE::Filter::IRC::Compat->new( DEBUG => $opts{debug} ),
17             ],
18             );
19             }
20              
21             1;
22              
23             =encoding utf8
24              
25             =head1 NAME
26              
27             POE::Filter::IRC -- A POE-based parser for the IRC protocol
28              
29             =head1 SYNOPSIS
30              
31             my $filter = POE::Filter::IRC->new();
32             my @events = @{ $filter->get( [ @lines ] ) };
33              
34             =head1 DESCRIPTION
35              
36             POE::Filter::IRC takes lines of raw IRC input and turns them into weird little
37             data structures, suitable for feeding to L.
38             They look like this:
39              
40             { name => 'event name', args => [ some info about the event ] }
41              
42             This module was long deprecated in L.
43             It now uses the same mechanism that that uses to parse IRC text.
44              
45             =head1 CONSTRUCTOR
46              
47             =head2 C
48              
49             Returns a new L object containing
50             a L object and a
51             L object. This does the same
52             job that POE::Filter::IRC used to do.
53              
54             =head1 METHODS
55              
56             See the documentation for POE::Filter::IRCD and POE::Filter::IRC::Compat.
57              
58             =head1 AUTHOR
59              
60             Dennis C Taylor
61              
62             Refactoring by Chris C Williams
63              
64             =head1 SEE ALSO
65              
66             The documentation for L and L.
67              
68             L
69              
70             L
71              
72             L
73              
74             =cut