Liking cljdoc? Tell your friends :D
Clojure only.

souther.build

Build-time helper: run the Souther annotation processor to generate the classes for a .sou module, without Maven. This drives javac through the JDK compiler API (javax.tools), so the only thing the caller must provide is the souther-compiler jar on the invoking classpath -- typically via a deps.edn alias -- where the processor is discovered by ServiceLoader.

Unlike the rest of souther-clj this namespace is not used at runtime; it depends on nothing beyond the JDK (it never imports the processor class, only names it to javac).

Build-time helper: run the Souther annotation processor to generate the classes for a `.sou`
module, without Maven. This drives javac through the JDK compiler API (`javax.tools`), so the
only thing the caller must provide is the `souther-compiler` jar on the invoking classpath --
typically via a deps.edn alias -- where the processor is discovered by ServiceLoader.

Unlike the rest of souther-clj this namespace is not used at runtime; it depends on nothing
beyond the JDK (it never imports the processor class, only names it to javac).
raw docstring

generate!clj

(generate! {:keys [source-dir trigger-dir class-dir]
            :or {source-dir "src/main/souther"
                 trigger-dir "src/main/java"
                 class-dir "target/classes"}})

Compile the .sou files in :source-dir into :class-dir by running SoutherProcessor over the :trigger-dir Java sources. Defaults match the example layout. Returns :class-dir on success and throws on failure. Requires a JDK (a system Java compiler) and souther-compiler on the classpath.

Compile the `.sou` files in :source-dir into :class-dir by running SoutherProcessor over the
:trigger-dir Java sources. Defaults match the example layout. Returns :class-dir on success and
throws on failure. Requires a JDK (a system Java compiler) and souther-compiler on the classpath.
raw docstring

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
Move to previous article
Move to next article
Ctrl+/Jump to the search field
× close