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.

Examples