 (ns clj-formal-specifications-app.spec)
 
 (defn get-ns-name
+  "If the given string starts with the ns macro call, returns the first
+  parameter given to it, which is the name of the namespace."
   [s]
   (re-find #"(?<=\(ns\s)[a-zA-Z0-9\.-]+(?=[\s\(\)])" s))
 

                   :contents (str @(var-get (val spec-ref-entry)))}))

(defn assoc-to-spec
 [spec map-entry]
  (cond
   (action-entry? map-entry)

   :else spec))

(defn ns-spec
  "Gets all public vars from ns, then uses them to build a specification map."
  [ns]
  (reduce assoc-to-spec
          {:namespace ns :actions #{} :data #{}}
