+++ /dev/null
-import java.lang.reflect.Method;
-
-// Test return values of Method.invoke.
-public class InvokeReturn {
- public boolean bTrue() {
- return true;
- }
-
- public boolean bFalse() {
- return false;
- }
-
- public char cc() {
- return 'c';
- }
-
- public short s5() {
- return (short)5;
- }
-
- public int i6() {
- return 6;
- }
-
- public long l7() {
- return (long)7;
- }
-
- public float f8() {
- return (float)8.0;
- }
-
- public double d9() {
- return 9.0;
- }
-
- public static void main(String[] args) {
- try {
- Object o = new InvokeReturn();
- Method m;
-
- // test boolean result
- m = o.getClass().getDeclaredMethod("bTrue", new Class[0]);
- System.out.println(m.invoke(o, new Object[0]));
-
- m = o.getClass().getDeclaredMethod("bFalse", new Class[0]);
- System.out.println(m.invoke(o, new Object[0]));
-
- // test char result
- m = o.getClass().getDeclaredMethod("cc", new Class[0]);
- System.out.println(m.invoke(o, new Object[0]));
-
- // test short result
- m = o.getClass().getDeclaredMethod("s5", new Class[0]);
- System.out.println(m.invoke(o, new Object[0]));
-
- // test int result
- m = o.getClass().getDeclaredMethod("i6", new Class[0]);
- System.out.println(m.invoke(o, new Object[0]));
-
- // test long result
- m = o.getClass().getDeclaredMethod("l7", new Class[0]);
- System.out.println(m.invoke(o, new Object[0]));
-
- // test float result
- m = o.getClass().getDeclaredMethod("f8", new Class[0]);
- System.out.println(m.invoke(o, new Object[0]));
-
- // test double result
- m = o.getClass().getDeclaredMethod("d9", new Class[0]);
- System.out.println(m.invoke(o, new Object[0]));
- } catch (UnsupportedOperationException e) {
- // We get this on targets which don't support reflection (no
- // libffi port yet). We might as well fake PASSes.
- System.out.println("true\nfalse\nc\n5\n6\n7\n8.0\n9.0");
- } catch (Throwable t) {
- t.printStackTrace();
- }
- }
-}