Suppose a Java packaged MATLAB function accepts a MWNumericArray of MATLAB type double, e.g., this makesqr example function.
n = new MWNumericArray(Double.valueOf(args),
theMagic = new Class1();
result = theMagic.makesqr(1, n);
It seems that a `String` object can automatically convert to the required MWNumericArray of type double, e.g., as in this alternative invocation of makesqr.
result = M.makesqr(1, arg);
The argument arg is described as a double, but it is in fact a String (step 16 on the source page). The rules for conversion say: "A Java string is converted to a 1-by-N array of char with N equal to the length of the input string."
This is nonsensical for a function that expects a double, so it clearly doesn't apply to the example here.
Where do the conversion rules apply, if not during invocation of Java packaged MATLAB functions?
What rules do apply here, resulting in conversion of a Java String to a MATLAB double?