std.object.element
class-hierarchy
added in 3.0
(class-hierarchy obj)Lists the class and interface hierarchy for the class
(element/class-hierarchy String) => [java.lang.String java.lang.Object #{java.lang.CharSequence java.lang.constant.ConstantDesc java.lang.constant.Constable java.lang.Comparable java.io.Serializable}]
class-info
added in 3.0
(class-info obj)Lists class information
(element/class-info String) => (contains {:name “java.lang.String” :hash anything :modifiers #{:instance :class :public :final}})
constructor?
added in 3.0
(constructor? elem)checks if if an element is a constructor
(-> (.getConstructors String) (first) (element/to-element) (element/constructor?)) => true
element-params
added in 3.0
(element-params elem)returns the arglist of a particular element
(-> (first (.getMethods String)) (element/to-element) (element/element-params)) ;;=> ’(java.lang.String java.lang.Object)
field?
added in 3.0
(field? elem)checks if an element is a field
(-> (.getFields String) (first) (element/to-element) (element/field?)) => true
instance?
added in 3.0
(instance? elem)checks if an element is non static
(->> (.getMethods String) (map element/to-element) (filter element/instance?) first) ;;#elemequals :: (java.lang.String, java.lang.Object) -> boolean
method?
added in 3.0
(method? elem)checks if an element is a method
(-> (.getMethods String) (first) (element/to-element) (element/method?)) => true
private?
added in 3.0
(private? elem)checks if an element is private
(->> (.getDeclaredFields String) (map element/to-element) (filter element/private?) first) ;;#elem[value :: (java.lang.String) | byte[]]
public?
added in 3.0
(public? elem)checks if an element is public
(->> (.getMethods String) (map element/to-element) (filter element/public?) first) ;;#elemequals :: (java.lang.String, java.lang.Object) -> boolean
static?
added in 3.0
(static? elem)checks if an element is a static one
(->> (.getMethods String) (map element/to-element) (filter element/static?) first) ;;#elemvalueOf :: (int) -> java.lang.String
to-element
added in 3.0
(to-element obj)converts a java.reflect object to a std.object.element one
(element/to-element (first (.getMethods String))) ;; #elemequals :: (java.lang.String, java.lang.Object) -> boolean