Sophie

Sophie

distrib > Mandriva > 2006.0 > x86_64 > by-pkgid > 6272f0638b62974c0d7ab7da6ff0910e > files > 2

perl-Tree-Trie-1.1-1mdk.src.rpm

%define real_name Tree-Trie

Summary:	Tree::Trie - An implementation of the Trie data structure in Perl
Name:		perl-%{real_name}
Version:	1.1
Release:	1mdk
License:	GPL or Artistic
Group:		Development/Perl
URL:		http://search.cpan.org/dist/%{real_name}
Source0:	http://search.cpan.org/CPAN/authors/id/A/AV/AVIF/%{real_name}-%{version}.tar.bz2
BuildRequires:	perl-devel
BuildArch:	noarch
BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-buildroot

%description
This module implements a trie data structure.  The term "trie"
comes from the word retrieval, but is generally pronounced like
"try".  A trie is a tree structure (or directed acyclic graph),
the nodes of which represent letters in a word.  For example, the
final lookup for the word 'bob' would look something like
"$ref->{'b'}{'o'}{'b'}{HASH(0x80c6bbc)}" (the HASH being an end
marker).  Only nodes which would represent words in the trie
exist, making the structure slightly smaller than a hash of the
same data set.  The advantages of the trie over other data
storage methods is that lookup times are O(1) WRT the size of the
index.  For sparse data sets, it is probably not as efficient as
performing a binary search on a sorted list, and for small files,
it has a lot of overhead.  The main advantage (at least from my
perspective) is that it provides a relatively cheap method for
finding a list of words in a large, dense data set which begin
with a certain string.  As of version 0.3 of this module, the
term "word" in this documentation can refer to one of two things:
either a refeence to an array of strings, or a scalar which is
not an array ref.  In the case of the former, each element of the
array is treated as a "letter" of the "word".  In the case of the
latter, the scalar is evaluated in string context and it is split
into its component letters.  Return values of methods match the
values of what is passed in -- that is, if you call lookup() with
an array reference, the return value will be an array reference
(if appropriate).

%prep
%setup -q -n %{real_name}-%{version} 

%build
%{__perl} Makefile.PL INSTALLDIRS=vendor
%make
make test

%install
rm -rf %{buildroot}
%makeinstall_std

%clean 
rm -rf %{buildroot}

%files
%defattr(-,root,root)
%doc Changes README
%{perl_vendorlib}/Tree/*.pm
%{_mandir}/*/*

%changelog
* Thu Jul 14 2005 Oden Eriksson <oeriksson@mandriva.com> 1.1-1mdk
- initial Mandriva package