Acme::Spider - frighten some other modules


Acme-Spider documentation Contained in the Acme-Spider distribution.

Index


Code Index:

NAME

Top

Acme::Spider - frighten some other modules

SYNOPSIS

Top

  use Acme::Spider;

DESCRIPTION

Top

Damian Conway is afraid of spiders, and all his code is afraid of this spider.

TODO

Top

As the spider evolves, it will become better at recognising Damian's modules. It's a pity evolution doesn't happen without some help.

AUTHORS

Top

Marty Pauley <marty@kasei.com> Karen Pauley <karen@kasei.com>

COPYRIGHT

Top


Acme-Spider documentation Contained in the Acme-Spider distribution.
package Acme::Spider;
$Acme::Spider::VERSION = '0.02';

use strict;
use warnings;
use Carp;

my $re = do {
	my @data = <DATA>;
	chomp @data;
	my $data = join '|', @data;
	qr/^(?:$data)/;
};

sub victim {
	my ($file) = @_;
	return scalar $file =~ $re;
}

sub bite {
	my ($self, $file) = @_;
	# we need to expand this test to include other Damian modules.
	if (victim($file)) {
		carp "$file doesn't like spiders";
		return 0;
	}
	return undef;
}

BEGIN { unshift @INC, \&bite }

1;

__DATA__
Acme/Bleach
Acme/Don/t
Attribute/Handlers
Attribute/Handlers/Prospective
Attribute/Types
Class/Contract
Class/Delegation
Class/Multimethods
Class/Std
Class/Std/Utils
Config/Std
Contextual/Return
Coy
Debug/Phases
Filter/Simple
Getopt/Clade
Getopt/Declare
Getopt/Euclid
Hook/LexWrap
Inline/Files
IO/Busy
IO/InSitu
IO/Interactive
IO/Prompt
Leading/Zeros
Lingua/EN/Inflect
Lingua/Romana/Perligata
List/Maker
Log/StdLog
Module/Starter/PBP
NEXT
Parse/RecDescent
Perl6/Builtins
Perl6/Currying
Perl6/Export
Perl6/Export/Attrs
Perl6/Form
Perl6/Gather
Perl6/Placeholders
Perl6/Rules
Perl6/Say
Perl6/Slurp
Perl6/Variables
Quantum/Superpositions
Regexp/Common
Regexp/MatchContext
Smart/Comments
Sub/Installer
Switch
Text/Autoformat
Text/Balanced
Text/Reform
Tie/SecureHash
Toolkit