Mailing List Archive

r3649 - trunk/perl/lib/KinoSearch/Analysis
Author: creamyg
Date: 2008-07-27 17:55:12 -0700 (Sun, 27 Jul 2008)
New Revision: 3649

Modified:
trunk/perl/lib/KinoSearch/Analysis/PolyAnalyzer.pm
trunk/perl/lib/KinoSearch/Analysis/Stemmer.pm
trunk/perl/lib/KinoSearch/Analysis/Stopalizer.pm
Log:
Lazy load Lingua::StopWords and Lingua::Stem::Snowball.


Modified: trunk/perl/lib/KinoSearch/Analysis/PolyAnalyzer.pm
===================================================================
--- trunk/perl/lib/KinoSearch/Analysis/PolyAnalyzer.pm 2008-07-28 00:47:14 UTC (rev 3648)
+++ trunk/perl/lib/KinoSearch/Analysis/PolyAnalyzer.pm 2008-07-28 00:55:12 UTC (rev 3649)
@@ -17,6 +17,11 @@
if ( defined $args{analyzers} ) {
$args{analyzers} = to_kino( $args{analyzers} );
}
+ else {
+ require Lingua::Stem::Snowball;
+ require Lingua::StopWords;
+ }
+
my $self = $either->_new(%args);
# Cache analyzers as Perl array as a lame-o optimization until
# transform_field gets ported to C.

Modified: trunk/perl/lib/KinoSearch/Analysis/Stemmer.pm
===================================================================
--- trunk/perl/lib/KinoSearch/Analysis/Stemmer.pm 2008-07-28 00:47:14 UTC (rev 3648)
+++ trunk/perl/lib/KinoSearch/Analysis/Stemmer.pm 2008-07-28 00:55:12 UTC (rev 3649)
@@ -3,8 +3,13 @@

package KinoSearch::Analysis::Stemmer;
use KinoSearch::base qw( KinoSearch::Analysis::Analyzer );
-use Lingua::Stem::Snowball;

+sub new {
+ my $either = shift;
+ require Lingua::Stem::Snowball;
+ return $either->_new(@_);
+}
+
1;

__END__
@@ -12,7 +17,7 @@
__AUTO_XS__

{ "KinoSearch::Analysis::Stemmer" => {
- make_constructors => ["new"],
+ make_constructors => ["_new"],
},
}


Modified: trunk/perl/lib/KinoSearch/Analysis/Stopalizer.pm
===================================================================
--- trunk/perl/lib/KinoSearch/Analysis/Stopalizer.pm 2008-07-28 00:47:14 UTC (rev 3648)
+++ trunk/perl/lib/KinoSearch/Analysis/Stopalizer.pm 2008-07-28 00:55:12 UTC (rev 3649)
@@ -5,10 +5,9 @@
use KinoSearch::Util::ToolSet qw( confess reftype to_kino );
use KinoSearch::base qw( KinoSearch::Analysis::Analyzer );

-use Lingua::StopWords;
-
sub new {
my ( $either, %args ) = @_;
+ require Lingua::StopWords;
if ( defined $args{stoplist} ) {
confess("stoplist must be a hashref")
unless reftype( $args{stoplist} ) eq 'HASH';


_______________________________________________
kinosearch-commits mailing list
kinosearch-commits@rectangular.com
http://www.rectangular.com/mailman/listinfo/kinosearch-commits