Liking cljdoc? Tell your friends :D

hara.io.classloader


+base+clj


+clojure-jar+clj


+rt+clj


delegationclj

(delegation cl)

returns a list of classloaders in order of top to bottom

(-> (Thread/currentThread) (.getContextClassLoader) (delegation)) => list?

returns a list of classloaders in order of top to bottom

(-> (Thread/currentThread)
    (.getContextClassLoader)
    (delegation))
=> list?
raw docstring

eval-inclj

(eval-in env form)

given an environment, evaluates a form

(-> (url-classloader [+clojure-jar+ (-> (io/file "scripts/testdata") (.getAbsolutePath) (str "/"))]) (new-env) (eval-in '(do (require 'other-code) (eval '(other-code/add 1 2 3 4 5))))) => 15

given an environment, evaluates a form
 
 (-> (url-classloader [+clojure-jar+
                       (-> (io/file "scripts/testdata")
                           (.getAbsolutePath)
                           (str "/"))])
     (new-env)
     (eval-in 
      '(do (require 'other-code)
           (eval '(other-code/add 1 2 3 4 5)))))
=> 15
raw docstring

new-envclj

(new-env)
(new-env cl)

creates an new environment for isolated class loading

(new-env) => (contains-in {:classloader #(instance? ClassLoader %) :rt clojure.lang.RT :compiler clojure.lang.Compiler :fn {:read-string ifn? :eval ifn?}})

(new-env (url-classloader [+clojure-jar+])) => (contains-in {:classloader ClassLoader :rt Class :compiler Class :fn {:read-string ifn?, :eval ifn?}})

creates an new environment for isolated class loading

(new-env)
=> (contains-in
    {:classloader #(instance? ClassLoader %)
     :rt clojure.lang.RT
     :compiler clojure.lang.Compiler
     :fn {:read-string ifn? 
          :eval ifn?}})

(new-env (url-classloader [+clojure-jar+]))
=> (contains-in
    {:classloader ClassLoader
     :rt Class 
     :compiler Class
     :fn {:read-string ifn?,
         :eval ifn?}})
raw docstring

to-urlclj

(to-url path)

constructs a java.net.URL object from a string

(str (to-url "/dev/null")) => "file:/dev/null"

constructs a `java.net.URL` object from a string

(str (to-url "/dev/null"))
=> "file:/dev/null"
raw docstring

url-classloaderclj

(url-classloader urls)
(url-classloader urls parent)

returns a java.net.URLClassLoader from a list of strings

(->> (url-classloader ["/dev/null"]) (.getURLs) (map str)) => ["file:/dev/null"]

returns a `java.net.URLClassLoader` from a list of strings

(->> (url-classloader ["/dev/null"])
     (.getURLs)
     (map str))
=> ["file:/dev/null"]
raw docstring

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close