(require '[ol.vips.codegen :as codegen])
(codegen/generate!)
;;=> {:enum-count 42
;; :operation-count 233
;; :skipped-count 57
;; :paths ["src/ol/vips/enums.clj"
;; "src/ol/vips/operations.clj"]}
Generate the introspected wrapper namespaces for ol.vips.
This namespace queries the live libvips runtime through ol.vips and
ol.vips.impl.introspect, then writes the generated public wrapper files:
src/ol/vips/enums.clj
src/ol/vips/operations.clj
The generated files are derived from the currently loaded libvips build, so
run this from a development environment where ol.vips can initialize its
native libraries.
Usage:
(require '[ol.vips.codegen :as codegen])
(codegen/generate!)
;;=> {:enum-count 42
;; :operation-count 233
;; :skipped-count 57
;; :paths ["src/ol/vips/enums.clj"
;; "src/ol/vips/operations.clj"]}
In the ol.vips code repo the babashka task bb codegen is the normal project entry point for this
namespace.
(generate!)
Generates ol.vips.enums and ol.vips.operations from live libvips introspection.
Initializes the runtime if needed, discovers the supported operations and enums from the current libvips build, writes the generated source files, and returns a summary map describing what was emitted.
Example:
(generate!)
;;=> {:enum-count ...
;; :operation-count ...
;; :skipped-count ...
;; :paths ["src/ol/vips/enums.clj" "src/ol/vips/operations.clj"]}
Can you improve this documentation?Edit on GitHub
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |