--- trunk/lib/Frey.pm 2008/06/29 11:34:17 17 +++ trunk/lib/Frey.pm 2008/06/29 16:29:09 24 @@ -1,7 +1,11 @@ -package Frey +package Frey; +use Moose; -use strict; -use warnings; +has 'debug' => ( + is => 'rw', + isa => 'Int', + default => 1, +); =head1 NAME @@ -16,5 +20,31 @@ =cut -1; +use Data::Dump qw/dump/; +use File::Find; + +has 'classes' => ( + is => 'ro', +# isa => 'HashRef[Str]', + default => sub { + my $self = shift; + # FIXME there must be better way to do this in Moose style + my $classes; + finddepth({ no_chdir => 1, wanted => sub { + return unless s/\.pm$//; + my @a = split(m!/!,$_); + if ( $#a != 2 ) { + warn "SKIP $_ [$#a]" if $self->debug; + return; + } + warn ">> $_ ",dump( @a ) if $self->debug; + warn "## $a[1]::$a[2]\n"; + push @$classes, join('::', @a); + } }, 'lib'); + warn "## classes = ",dump( $classes ) if $self->debug; + $classes; + }, + lazy => 1, +); +1;