File Coverage

blib/lib/IO/Async/Loop/AnyEvent2/ElectricBoogaloo.pm
Criterion Covered Total %
statement 20 20 100.0
branch 1 2 50.0
condition 3 6 50.0
subroutine 7 7 100.0
pod n/a
total 31 35 88.5


line stmt bran cond sub pod time code
1             =head1 NAME
2              
3             IO::Async::Loop::AnyEvent2::ElectricBoogaloo - load IO::Async::Loop::AnyEvent
4              
5             =head1 SYNOPSIS
6              
7             use IO::Async::Loop::AnyEvent2::ElectricBoogaloo;
8              
9             my $loop = IO::Async::Loop::AnyEvent->new();
10             ...
11              
12             =head1 DESCRIPTION
13              
14             This module lets you load L with L 6.1/7.
15              
16             Unfortunately, IO::Async::Loop::AnyEvent currently fails its tests because it's
17             being sabotaged by AnyEvent, so you have to force the install (e.g. using
18             C or C).
19              
20             After that, IO::Async::Loop::AnyEvent2::ElectricBoogaloo should install normally.
21              
22             =head1 NOTES
23              
24             The code to sabotage IO::Async::Loop::AnyEvent first appeared in AnyEvent 6.1
25             (it was not present in AnyEvent 6.02). It was later modified in 6.11, and again
26             in AnyEvent 7.0. As of 2016, the code is still there.
27              
28             =head1 SEE ALSO
29              
30             L, L, L
31              
32             =head1 AUTHOR
33              
34             Lukas Mai, C<< >>
35              
36             =head1 COPYRIGHT & LICENSE
37              
38             Copyright 2011, 2016 Lukas Mai.
39              
40             This program is free software; you can redistribute it and/or modify it
41             under the terms of either: the GNU General Public License as published
42             by the Free Software Foundation; or the Artistic License.
43              
44             See L for more information.
45              
46             =cut
47              
48             package IO::Async::Loop::AnyEvent2::ElectricBoogaloo;
49              
50             ; use warnings
51 1     1   13353 ; use strict
  1         2  
  1         26  
52              
53 1     1   3 ; *VERSION = \'0.003'
  1         1  
  1         26  
54              
55             ; use AnyEvent
56             (
57             )
58 1     1   997 ; BEGIN
  1         4226  
  1         34  
59 1     1   1 { my $AE_log = \&AnyEvent::log
60             ; no warnings qw
61 1         99 ( redefine
62             )
63 1     1   4 ; *AnyEvent::log = sub
  1         1  
64             ( $$
65             ; @
66             )
67 2 50 33 2   3714 { if
      66        
68             ( $_[0] eq 'fatal'
69             && ( $_[1] eq "AnyEvent: IO::Async::Loop::AnyEvent detected - this module is broken by design,\nabuses internals and breaks AnyEvent, will not continue."
70             || $_[1] eq "AnyEvent: IO::Async::Loop::AnyEvent detected - that module is broken by\ndesign, abuses internals and breaks AnyEvent - will not continue."
71             || $_[1] eq "IO::Async::Loop::AnyEvent detected - that module is broken by\ndesign, abuses internals and breaks AnyEvent - will not continue."
72             )
73             )
74 1         2 { return "no :)"
75             }
76             ; goto
77 1         3 & $AE_log
78             }
79 1         22 }
80              
81             ; use parent qw
82 1         4 ( IO::Async::Loop::AnyEvent
83             )
84              
85 1     1   397 ; <<''
  1         246  
86             HAHAHAHA
87             YOU THINK YOURE THOUGH UH ?
88             I HAVE ONE WORD FOR YOU
89             THE FORCED INDENTATION OF THE CODE
90             GET IT ?
91             I DONT THINK SO
92             YOU DONT KNOW ABOUT MY OTHER CAR I GUESS ?
93             ITS A CDR
94             AND IS PRONOUNCED ``CUDDER''
95             OK YOU FUQIN ANGERED AN EXPERT PROGRAMMER
96             THIS IS /prog/
97             YOU ARE ALLOWED TO POST HERE ONLY IF YOU HAVE ACHIEVED SATORI
98             PROGRAMMING IS ALL ABOUT ``ABSTRACT BULLSHITE'' THAT YOU WILL NEVER COMPREHEND
99             I HAVE READ SICP
100             IF ITS NOT DONE YOU HAVE TO
101             TOO BAD RUBY ON RAILS IS SLOW AS FUCK
102             BBCODE AND ((SCHEME)) ARE THE ULTIMATE LANGUAGES
103             ALSO
104             WELCOME TO /prog/
105             EVERY THREAD WILL BE REPLIED TO
106             NO EXCEPTION
107