   (success? [v] v)
   (get-value [_] nil))
 
-(defn compile-rule-handler
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; Implementation
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+(defn- compile-rule-handler
   "Receives a rule handler and return a compiled version of it.
 
   The compiled version of rule handler consists in

  (mapv compile-access-rule accessrules))

(defn- match-access-rules
  "Iterates over all rules and try match each one
  in order. Return a first matched rule or nil."
  [accessrules request]
  (first (filter (fn [accessrule]
                   (let [matcher (:matcher accessrule)]

  that will be used for match the url and `:handler` is a rule
  handler.

  Little overview of aspect of access rules:

    [{:uri \"/foo\"
      :handler user-access}
