BSD Ports

devel/p5-Tree-Trie 1.9 MidnightBSD

Data structure optimized for prefix lookup

System
MidnightBSD
Repository
mports
Maintainer
[email protected]
Port added
Last update
Commit
1ed0f9823e
License
artistic, gpl+
Categories
devel, perl5

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'}{'00'} (the 00 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.

In the other systems

The newest version among them is 1.9, as upstream numbers it.

SystemPortVersionVulnerabilitiesStatusMaintainerLast update
MidnightBSDdevel/p5-Tree-Trie1.9 newestno data-[email protected]2026-11-01
FreeBSDdevel/p5-Tree-Trie1.9 newestnone known-[email protected]-
DragonFlydevel/p5-Tree-Trie1.9 newestnone known-[email protected]-
HardenedBSDdevel/p5-Tree-Trie1.9 newestno data-[email protected]-
GhostBSDdevel/p5-Tree-Trie1.9 newestno data-[email protected]-

Version history 1

  1. 1.9 1ed0f9823e

Upstream's version as each commit to the port's Makefile set it, or as this site first saw it in the system's packages; the tree's own revisions are not versions here.

Install

Binary package:

mport install p5-Tree-Trie

From mports:

cd /usr/mports/devel/p5-Tree-Trie && make install clean

To depend on this port in another port's Makefile:

RUN_DEPENDS=	p5-Tree-Trie>0:devel/p5-Tree-Trie

Dependency graph

Ports that need it on the left, what it needs to run on the right; at most 8 of each. "Dependencies" below lists them all.

Dependencies

Configuration

No options to configure.

USES
perl5
Service scripts
none

Files

pkg-plist 2
  • %%SITE_PERL%%/Tree/Trie.pm
  • %%PERL5_MAN3%%/Tree::Trie.3.gz
distinfo 1
FileSizeSHA256
Tree-Trie-1.9.tar.gz41528cb05722f6d67a99a83f3af1427c5974da7a5509e1416f257aefbc93f3c9682bd
Master sites 1
  • CPAN

Commit history 1

DateCommitCreditsLog message
1ed0f9823e Lucas Holt shells: port 33 shells and utilities from FreeBSD (plus 7 prerequisites) (#2196)
## Summary Port 33 missing shells and shell utilities from FreeBSD ports into `shells/`, along with 7 prerequisite ports in `devel/`, `lang/`, and `textproc/`. ### Prerequisites Added (7) - `devel/p5-Data-Dump-Streamer` - `devel/p5-Term-Screen` - `devel/p5-Tree-Trie` - `devel/schilybase` - `devel/smake` - `lang/chez-scheme` - `textproc/p5-YAML-Syck` ### Shells & Utilities Added (33) - `shells/antibody` - `shells/bash-completion-zfs` - `shells/bicon` - `shells/bosh` - `shells/carapace` - `shells/git-prompt.zsh` - `shells/ion` - `shells/iris` - `shells/meka` - `shells/modernish` - `shells/murex` - `shells/nsh` - `shells/nu_plugin_formats` - `shells/nu_plugin_gstat` - `shells/nu_plugin_inc` - `shells/nu_plugin_polars` - `shells/nu_plugin_query` - `shells/ohmyzsh` …