   "Invoked from [[namespace-handler]] to construct a Ring request handler for the provided
   options and namespace specifications.
 
-
-
   Returns a tuple of the constructed handler and the routing table (the flattened
   version of the namespace specifications)."
   {:added "0.1.20"}

                             (get options :context [])
                             (merge-arg-resolver-maps default-arg-resolvers (get options :arg-resolvers))
                             (get options :default-middleware default-namespace-middleware))
                           (construct-routing-table
                             (if async?
                               (get options :sync-wrapper default-sync-wrapper)

          [method endpoint-context request-handler merged-metadata])))))

(defn- expand-namespace-entry
  [sync-wrapper [context ns-sym arg-resolvers middleware ns-metadata]]
  (t/track
    #(format "Identifying endpoints in namespace `%s.'" ns-sym)
    (let [ns-metadata' (dissoc ns-metadata :doc)
          arg-resolvers' (merge-arg-resolver-maps arg-resolvers (:arg-resolvers ns-metadata'))]
      (->> ns-sym
           ns-publics
           (keep (fn [[k v]]
                   (if (ifn? @v)
                     (construct-namespace-table-entry sync-wrapper context ns-sym arg-resolvers' middleware ns-metadata' k v))))
           doall))))

(defn- construct-routing-table
