X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDevel%2FDeclare.pm;h=14f9dc2e80b714f4170aa714462c46c126bfca6b;hb=b7f6e45e4fe4d5ef3092a6cb18e04123a303c0fb;hp=b0c5a39fb7a87d82aaa004258d330eba486b8001;hpb=66ecedc8d6c92f0664635002ef3d55b896cca80b;p=p5sagit%2FDevel-Declare.git diff --git a/lib/Devel/Declare.pm b/lib/Devel/Declare.pm index b0c5a39..14f9dc2 100644 --- a/lib/Devel/Declare.pm +++ b/lib/Devel/Declare.pm @@ -1,23 +1,25 @@ package Devel::Declare; +# ABSTRACT: (DEPRECATED) Adding keywords to perl, in perl use strict; use warnings; use 5.008001; -our $VERSION = '0.006012'; +our $VERSION = '0.006_020'; + +bootstrap Devel::Declare; +$VERSION =~ tr/_//d; use constant DECLARE_NAME => 1; use constant DECLARE_PROTO => 2; use constant DECLARE_NONE => 4; use constant DECLARE_PACKAGE => 8+1; # name implicit -use vars qw(%declarators %declarator_handlers @ISA); +our (%declarators, %declarator_handlers, @ISA); use base qw(DynaLoader); use Scalar::Util 'set_prototype'; use B::Hooks::OP::Check 0.19; -bootstrap Devel::Declare; - @ISA = (); initialize(); @@ -308,6 +310,36 @@ over Perl's parser, allowing the creation of new syntax. This document describes how to create a simple declarator. +=head1 WARNING + +=for comment mst wrote this warning for MooseX::Declare, and ether adapted it for here: + +B Devel::Declare is a giant bag of crack +originally implemented by mst with the goal of upsetting the perl core +developers so much by its very existence that they implemented proper +keyword handling in the core. + +As of perl5 version 14, this goal has been achieved, and modules such +as L, L, and L provide +mechanisms to mangle perl syntax that don't require hallucinogenic +drugs to interpret the error messages they produce. + +If you are using something that uses Devel::Declare, please for the love +of kittens use something else: + +=over 4 + +=item * + +Instead of L, use L + +=item * + +Instead of L, use +L (requires perl 5.22) or L + +=back + =head1 USAGE We'll demonstrate the usage of C with a motivating example: a new