cljs / api

ClojureScript API parser
http://cljs.github.io/api/
MIT License
193 stars 23 forks source link

Include both JVM and JS implementations #148

Open shaunlebron opened 8 years ago

shaunlebron commented 8 years ago

As was mentioned, we should probably show both JVM and JS implementations: https://github.com/cljsinfo/cljs-api-docs/pull/147

This is confusing because there are two versions of the ClojureScript compiler:

  1. ClojureScript JVM (built in Clojure) - the optimized compiler for use in production
  2. ClojureScript JS (built in ClojureScript) - the bootstrapped compiler that was added after some years

Both versions are in the same codebase, but they are separated by the #?(:clj ...) and #?(:cljs ...) switches, respectively.

We're currently only reading the :clj versions of the functions

shaunlebron commented 2 years ago

cljc files that we are currently parsing:

$ grep ':filename.*\.cljc' cljs-api.edn | awk '{print $2}' | tr -d '",' | sort -u

# library

src/main/cljs/cljs/pprint.cljc
src/main/cljs/cljs/test.cljc

src/main/cljs/cljs/spec.cljc
src/main/cljs/cljs/spec/alpha.cljc
src/main/cljs/cljs/spec/gen/alpha.cljc
src/main/cljs/cljs/spec/impl/gen.cljc
src/main/cljs/cljs/spec/test.cljc
src/main/cljs/cljs/spec/test/alpha.cljc

# compiler

src/main/clojure/cljs/core.cljc
src/main/clojure/cljs/compiler.cljc
src/main/clojure/cljs/repl.cljc
src/main/clojure/cljs/tagged_literals.cljc

src/main/clojure/cljs/analyzer.cljc
src/main/clojure/cljs/analyzer/api.cljc