Converts Java object to a simple scalar if possible
jsimplify.Rd.jsimplify attempts to convert Java objects that represent
simple scalars into corresponding scalar representation in R.
Arguments
- o
arbitrary object
- promote
logical, if
TRUEthen an ambiguous conversion where the native type value would map toNA(e.g., Javainttype with value -2147483648) will be taken to represent an actual value and will be promoted to a larger type that can represent the value (in case ofintpromoted todouble). IfFALSEthen such values are assumed to representNAs.
Details
If o is not a Java object reference, o is returned
as-is. If o is a reference to a scalar object (such as single
integer, number, string or boolean) then the value of that object is
returned as R vector of the corresponding type and length one.
This function is used by .jfield to simplify the results
of field access if required.
Currently there is no function inverse to this, the usual way to wrap
scalar values in Java references is to use .jnew as the
corresponding constructor.
Examples
if (FALSE) { # \dontrun{
i <- .jnew("java/lang/Integer", as.integer(10))
print(i)
print(.jsimplify(i))
} # }