mirror of
https://github.com/metosin/reitit.git
synced 2026-01-29 01:10:34 +00:00
Cleanup
This commit is contained in:
parent
42d6d0c78d
commit
8755e19f78
1 changed files with 61 additions and 30 deletions
|
|
@ -91,7 +91,7 @@
|
||||||
|
|
||||||
(defn insert
|
(defn insert
|
||||||
([routes]
|
([routes]
|
||||||
(insert nil routes))
|
(insert nil routes))
|
||||||
([node routes]
|
([node routes]
|
||||||
(reduce
|
(reduce
|
||||||
(fn [acc [p d]]
|
(fn [acc [p d]]
|
||||||
|
|
@ -110,10 +110,8 @@
|
||||||
(Trie/linearMatcher matchers)
|
(Trie/linearMatcher matchers)
|
||||||
(first matchers))))
|
(first matchers))))
|
||||||
|
|
||||||
(defn pretty [{:keys [data children wilds catch-all]}]
|
(defn pretty [matcher]
|
||||||
(into
|
(-> matcher str read-string eval))
|
||||||
(if data [data] [])
|
|
||||||
(mapcat (fn [[p n]] [p (pretty n)]) (concat children wilds catch-all))))
|
|
||||||
|
|
||||||
(defn lookup [^Trie$Matcher matcher path]
|
(defn lookup [^Trie$Matcher matcher path]
|
||||||
(if-let [match ^Trie$Match (Trie/lookup matcher ^String path)]
|
(if-let [match ^Trie$Match (Trie/lookup matcher ^String path)]
|
||||||
|
|
@ -122,22 +120,67 @@
|
||||||
(defn scanner [compiled-tries]
|
(defn scanner [compiled-tries]
|
||||||
(Trie/scanner compiled-tries))
|
(Trie/scanner compiled-tries))
|
||||||
|
|
||||||
;;
|
|
||||||
;; matcher
|
|
||||||
;;
|
|
||||||
|
|
||||||
;;
|
;;
|
||||||
;; spike
|
;; spike
|
||||||
;;
|
;;
|
||||||
|
|
||||||
(-> nil
|
(->
|
||||||
(insert "/:abba" 1)
|
[["/v2/whoami" 1]
|
||||||
(insert "/kikka" 2)
|
["/v2/users/:user-id/datasets" 2]
|
||||||
(insert "/kikka/kakka/kukka" 3)
|
["/v2/public/projects/:project-id/datasets" 3]
|
||||||
(insert "/kikka/:kakka/kukka" 4)
|
["/v1/public/topics/:topic" 4]
|
||||||
(insert "/kikka/kuri/{user/doc}.html" 5)
|
["/v1/users/:user-id/orgs/:org-id" 5]
|
||||||
(insert "/kikkare/*path" 6)
|
["/v1/search/topics/:term" 6]
|
||||||
#_(pretty))
|
["/v1/users/:user-id/invitations" 7]
|
||||||
|
["/v1/users/:user-id/topics" 9]
|
||||||
|
["/v1/users/:user-id/bookmarks/followers" 10]
|
||||||
|
["/v2/datasets/:dataset-id" 11]
|
||||||
|
["/v1/orgs/:org-id/usage-stats" 12]
|
||||||
|
["/v1/orgs/:org-id/devices/:client-id" 13]
|
||||||
|
["/v1/messages/user/:user-id" 14]
|
||||||
|
["/v1/users/:user-id/devices" 15]
|
||||||
|
["/v1/public/users/:user-id" 16]
|
||||||
|
["/v1/orgs/:org-id/errors" 17]
|
||||||
|
["/v1/public/orgs/:org-id" 18]
|
||||||
|
["/v1/orgs/:org-id/invitations" 19]
|
||||||
|
["/v1/users/:user-id/device-errors" 22]
|
||||||
|
["/v2/login" 23]
|
||||||
|
["/v1/users/:user-id/usage-stats" 24]
|
||||||
|
["/v2/users/:user-id/devices" 25]
|
||||||
|
["/v1/users/:user-id/claim-device/:client-id" 26]
|
||||||
|
["/v2/public/projects/:project-id" 27]
|
||||||
|
["/v2/public/datasets/:dataset-id" 28]
|
||||||
|
["/v2/users/:user-id/topics/bulk" 29]
|
||||||
|
["/v1/messages/device/:client-id" 30]
|
||||||
|
["/v1/users/:user-id/owned-orgs" 31]
|
||||||
|
["/v1/topics/:topic" 32]
|
||||||
|
["/v1/users/:user-id/bookmark/:topic" 33]
|
||||||
|
["/v1/orgs/:org-id/members/:user-id" 34]
|
||||||
|
["/v1/users/:user-id/devices/:client-id" 35]
|
||||||
|
["/v1/users/:user-id" 36]
|
||||||
|
["/v1/orgs/:org-id/devices" 37]
|
||||||
|
["/v1/orgs/:org-id/members" 38]
|
||||||
|
["/v2/orgs/:org-id/topics" 40]
|
||||||
|
["/v1/whoami" 41]
|
||||||
|
["/v1/orgs/:org-id" 42]
|
||||||
|
["/v1/users/:user-id/api-key" 43]
|
||||||
|
["/v2/schemas" 44]
|
||||||
|
["/v2/users/:user-id/topics" 45]
|
||||||
|
["/v1/orgs/:org-id/confirm-membership/:token" 46]
|
||||||
|
["/v2/topics/:topic" 47]
|
||||||
|
["/v1/messages/topic/:topic" 48]
|
||||||
|
["/v1/users/:user-id/devices/:client-id/reset-password" 49]
|
||||||
|
["/v2/topics" 50]
|
||||||
|
["/v1/login" 51]
|
||||||
|
["/v1/users/:user-id/orgs" 52]
|
||||||
|
["/v2/public/messages/dataset/:dataset-id" 53]
|
||||||
|
["/v1/topics" 54]
|
||||||
|
["/v1/orgs" 55]
|
||||||
|
["/v1/users/:user-id/bookmarks" 56]
|
||||||
|
["/v1/orgs/:org-id/topics" 57]]
|
||||||
|
(insert)
|
||||||
|
(compile)
|
||||||
|
(pretty))
|
||||||
|
|
||||||
(-> nil
|
(-> nil
|
||||||
(insert "/kikka" 2)
|
(insert "/kikka" 2)
|
||||||
|
|
@ -145,16 +188,4 @@
|
||||||
(insert "/kikka/:kakka/kurkku" 4)
|
(insert "/kikka/:kakka/kurkku" 4)
|
||||||
(insert "/kikka/kuri/{user/doc}/html" 5)
|
(insert "/kikka/kuri/{user/doc}/html" 5)
|
||||||
(compile)
|
(compile)
|
||||||
(lookup "/kikka/kakka/kurkku"))
|
(pretty))
|
||||||
|
|
||||||
;; =>
|
|
||||||
|
|
||||||
["/"
|
|
||||||
["kikka" [2
|
|
||||||
"/" ["k" ["akka/kukka" [3]
|
|
||||||
"uri/" [:user/doc [".html" [5]]]]
|
|
||||||
:kakka ["/kukka" [4]]]
|
|
||||||
"re/" [#{:path} [6]]]
|
|
||||||
:abba [1]]]
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue