Back
analyze-like-jdbc-with (clj)
(source)function
(analyze-like-jdbc-with {:keys [filename callstack], :as ctx} expr)
clojure.java.jdbc/with-db-* and next.jdbc/with-transaction are almost
like a let binding: they accept a binding vector which has a single symbol,
an expression, and an optional third expression (the options to apply).
We check there are 2 or 3 forms in the first argument (the binding vector).
We analyze the 3rd form if it is present (the options).
We analyze the whole expression as a let, after modifying the binding
expression to only have two children.