use strict;
use warnings;
use File::Find;
-use File::Slurp 'slurp';
-use List::MoreUtils 'uniq';
-use autodie;
+use Fatal qw(open close);
+#use File::Slurp 'slurp';
+#use List::MoreUtils 'uniq';
+#use autodie;
+
+print "Generate Mouse::Tiny ...\n";
+
+sub slurp {
+ open my $in, '<', $_[0];
+ local $/;
+ return scalar <$in>;
+}
+sub uniq{
+ my %seen;
+ return grep{ !$seen{$_}++ } @_;
+}
require 'lib/Mouse/Spec.pm';
for my $file (uniq
'lib/Mouse/Exporter.pm',
'lib/Mouse/Util.pm',
+ 'lib/Mouse/PurePerl.pm',
'lib/Mouse/Meta/TypeConstraint.pm',
'lib/Mouse/Util/TypeConstraints.pm',
sort @files) {
print { $handle } << 'EOF';
# if regular Mouse is loaded, bail out
unless ($INC{'Mouse.pm'}) {
+ # tell Perl we already have all of the Mouse files loaded:
EOF
for my $file (@files) {
print { $handle } << 'EOF';
eval sprintf("#line %d %s\n", __LINE__, __FILE__) . <<'END_OF_TINY';
-
-# tell Perl we already have all of the Mouse files loaded:
EOF
print { $handle } "\n# and now their contents\n\n";
EOF
close $handle;
+
+print "done.\n";