 (alter-meta! #'map->Database assoc :no-doc true)
 
 (defn database?
+  "Test if `db` is a database in the sense of `clj-db-util`."
+  {:added "0.2.0"}
   [db]
   (instance? Database db))
 
-(defn migrations-loc [{:keys [db-resource-path schema vendor]}]
+(defn migrations-loc
+  "Obtain the classpath location of schema migrations for `db`."
+  {:added    "0.2.0"
+   :arglists '([db])}
+  [{:keys [db-resource-path schema vendor]}]
   {:pre [db-resource-path schema vendor]}
   (format "%s/%s/%s/migrations" db-resource-path (name vendor) schema))
 
-(defn statements-loc [{:keys [db-resource-path schema vendor]}]
+(defn statements-loc
+  "Obtain the classpath location of statements to execute against `db`."
+  {:added "0.2.0"
+   :arglists '([db])}
+  [{:keys [db-resource-path schema vendor]}]
   {:pre [db-resource-path vendor schema]}
   (format "%s/%s/%s/statements" db-resource-path (name vendor) schema))
 

   (wrap-jdbc-fn jdbc/update! table value (prepare-params where-clause param-vals))))

(defn delete!
  ([table]
   (delete! table nil))
  ([table where-clause]

    (assoc db :migrator fw)))

(defn connect-to-db
  "Create a connection pool for the database identified by `url`, `user`, and `password`."
  {:added "0.2.0"}
  [^String url ^String user ^String password]
  {:pre [url user password]}
  (let [cfg (doto (HikariConfig.)
