plar / go-adaptive-radix-tree

Adaptive Radix Trees implemented in Go

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Wildcard support

DarkGhostHunter opened this issue · comments

commented

ART trees are useful for using with HTTP Routers, but this implementation lacks wildcards.

http.Router.Register("foo/{bar}/quz", "custom value")

That above should match a path like foo/good-day/quz. I could have made a fork which implements wildcards adding a node exclusively for the wildcards, and adding an member to identify which branch is a wildcard to fallback if none matches, but there is too much verbose code I don't know what the fuck what does what and why.

The HTTP router support is not part of the project scope, so feel free to make a fork and hack around. :)

You can also check different implementations of Go HTTP routers.