Categorygithub.com/stackql/go-suffix-map
module
0.0.1-alpha01
Repository: https://github.com/stackql/go-suffix-map.git
Documentation: pkg.go.dev

# README

go-suffix-map

go-suffix-map supports a suffix tree with pointers to aribitrary objects. The idea is that lookup happens on shared suffix between search key and store key, with specialisations to be supported.

The default specialisation is that suffix matching is on either dot (.) separation boundaries, or full string match.

Examples of default lookup

Lookup KeyStorage keyMatches?Comment
subSubSubDomainBetadomainA.subDomainB.subSubDomainC.subSubSubDomainBetatruematches on . boundary
omainBetadomainA.subDomainB.subSubDomainC.subSubSubDomainBetafalsedoes not match on . boundary
subSubDomainC.subSubSubDomainBetadomainA.subDomainB.subSubDomainC.subSubSubDomainBetatruematches on . boundary
ainC.subSubSubDomainBetadomainA.subDomainB.subSubDomainC.subSubSubDomainBetafalsedoes not match on . boundary
subDomainB.subSubDomainC.subSubSubDomainBetadomainA.subDomainB.subSubDomainC.subSubSubDomainBetatruematches on . boundary
ainA.subDomainB.subSubDomainC.subSubSubDomainBetadomainA.subDomainB.subSubDomainC.subSubSubDomainBetafalsedoes not match on . boundary
domainA.subDomainB.subSubDomainC.subSubSubDomainBetadomainA.subDomainB.subSubDomainC.subSubSubDomainBetatruefull string match

TODO

  • Convert to golang generics.
  • Possibly change core implementation to Ukkonen's algorithm.
  • Add init config object to support specialisations.

# Packages

No description provided by the author