Liking cljdoc? Tell your friends :D

nemesis.core


compile-all!cljmacro

(compile-all!)
raw docstring

compile-all!-fnclj

(compile-all!-fn)

compile-all!-fn*clj


defgcljmacro

(defg & form)

create a generic function

create a generic function
raw docstring

defg-fnclj

(defg-fn & form)

defg-fn*clj


deftcljmacro

(deft {:as spec :keys [tag parents impls fields childs class-sym]})
(deft tag fields)
(deft tag fields x & xs)

declare a new usertype (a clojure record) tag: the typetag (keyword) corresponding to our freshly created record fields: the fields of our record parents: a seq of other typetags that our type belongs to & impls: optional generic implementations for the defined type

declare a new usertype (a clojure record)
tag: the typetag (keyword) corresponding to our freshly created record
fields: the fields of our record
parents: a seq of other typetags that our type belongs to
& impls: optional generic implementations for the defined type
raw docstring

deft-fnclj

(deft-fn {:as spec :keys [tag parents impls fields childs class-sym]})
(deft-fn tag fields)
(deft-fn tag fields x & xs)

deft-fn*clj


generic+cljmacro

(generic+ name & cases)

add new cases to an existant generic all given arities must already be known

add new cases to an existant generic
all given arities must already be known
raw docstring

generic+-fnclj

(generic+-fn name & cases)

generic+-fn*clj


implements?cljmacro

(implements? v name)
(implements? v name & names)

test if something implements one or several generics

test if something implements one or several generics
raw docstring

implements?-fnclj

(implements?-fn v name)
(implements?-fn v name & names)

implements?-fn*clj


prototypesclj/s


tag+cljmacro

(tag+ {:keys [tag childs parents impls]})
(tag+ tag childs)
(tag+ tag childs parents & impls)

add a type tag to the type registry (living in nemesis.state/state) tag: the typetag we are defining/extending (a keyword) childs: a seq of other typetags or classes that belongs to the defined tag parents: a seq of other typetags that the defined tag belongs to & impls: optional generic implementations for the defined tag

add a type tag to the type registry (living in nemesis.state/state)
tag: the typetag we are defining/extending (a keyword)
childs: a seq of other typetags or classes that belongs to the defined tag
parents: a seq of other typetags that the defined tag belongs to
& impls: optional generic implementations for the defined tag
raw docstring

tag+-fnclj

(tag+-fn {:keys [tag childs parents impls]})
(tag+-fn tag childs)
(tag+-fn tag childs parents & impls)

tag+-fn*clj


thingcljmacro

(thing & impls)

like reify but for generics

like reify but for generics
raw docstring

thing-fnclj

(thing-fn & impls)

thing-fn*clj


type+cljmacro

(type+ tag & impls)

like extend type

like extend type
raw docstring

type+-fnclj

(type+-fn tag & impls)

type+-fn*clj

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

× close