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