ClojureDocs

Nav

Namespaces

bases

clojure.core

Available since 1.0 (source)
  • (bases c)
Returns the immediate superclass and direct interfaces of c, if any
3 Examples
<pre>user=> (import 'java.io.File)



user=> (bases java.io.File)

(java.lang.Object java.io.Serializable java.lang.Comparable)</pre>
;; what is a hash-map?
(bases (class {}))
;;=> (clojure.lang.APersistentMap 
;;+>  clojure.lang.IObj 
;;+>  clojure.lang.IEditableCollection)

;; what is a set?
(bases (class #{}))
;;=> (clojure.lang.APersistentSet 
;;+>  clojure.lang.IObj 
;;+>  clojure.lang.IEditableCollection)

;; what is a vector?
(bases (class []))
;;=> (clojure.lang.APersistentVector 
;;+>  clojure.lang.IObj 
;;+>  clojure.lang.IEditableCollection)

;; what is a list? 
(bases (class ()))
;;=> (clojure.lang.Obj 
;;+>  clojure.lang.IPersistentList 
;;+>  java.util.List 
;;+>  clojure.lang.ISeq 
;;+>  clojure.lang.Counted 
;;+>  clojure.lang.IHashEq)
;; what is a defrecord

user=> (defprotocol Fly
           (fly [this]))

user=> (defrecord Bird [name] Fly
           (fly [this] (str (:name this) " flies....")))

user=> (ancestors Bird)
;; (java.lang.Object 
;; user.Fly 
;; clojure.lang.IRecord 
;; clojure.lang.IHashEq 
;; clojure.lang.IObj 
;; clojure.lang.ILookup 
;; clojure.lang.IKeywordLookup 
;; clojure.lang.IPersistentMap 
;; java.util.Map 
;; java.io.Serializable)
See Also

Returns the immediate and indirect superclasses and interfaces of c, if any

Added by didibus

Returns the :type metadata of x, or its Class if none

Added by didibus
0 Notes
No notes for bases