Skip to contents

Is a java object an instance of a given java class

Usage

o %instanceof% cl
.jinstanceof( o, cl )

Arguments

o

java object reference

cl

java class. This can be a character vector of length one giving the name of the class, or another java object, or an instance of the Class class, or a object of class jclassName.

Value

TRUE if o is an instance of cl

Author

Romain Francois <francoisromain@free.fr>

Examples

#> Error in .jcheck(): java.lang.NoClassDefFoundError: RJavaTools.jcall("java/lang/System", "S", "getProperty", "java.class.path")new("jobjRef", jobj = <pointer: 0x590bf6a99902>, jclass = "java/lang/NoClassDefFoundError")
Double <- J("java.lang.Double")
d <- new( Double, "10.2" )
#> Error in .jcall("RJavaTools", "Ljava/lang/Object;", "newInstance", class,     .jarray(p, "java/lang/Object", dispatch = FALSE), .jarray(pc,         "java/lang/Class", dispatch = FALSE), evalString = FALSE,     evalArray = FALSE, use.true.class = TRUE): RcallMethod: cannot determine object class

# character
d %instanceof% "java.lang.Double"
#> Error: object 'd' not found
d %instanceof% "java.lang.Number"
#> Error: object 'd' not found

# jclassName
d %instanceof% Double
#> Error: object 'd' not found

# instance of Class
Double.class <- Double@jobj
d %instanceof% Double.class
#> Error: object 'd' not found

# other object
other.double <- new( Double, 10.2 )
#> Error in .jcall("RJavaTools", "Ljava/lang/Object;", "newInstance", class,     .jarray(p, "java/lang/Object", dispatch = FALSE), .jarray(pc,         "java/lang/Class", dispatch = FALSE), evalString = FALSE,     evalArray = FALSE, use.true.class = TRUE): RcallMethod: cannot determine object class
d %instanceof% other.double
#> Error: object 'd' not found

#> Error: object 'd' not found