Thanks, Howard. Will fix in next push. I changed the example to use the "assertEquals" function from JUnit:
MethodHandle cat = lookup().findVirtual(String.class, "concat", methodType(String.class, String.class)); assertEquals("xy", (String) cat.invokeExact("x", "y")); MethodHandle d0 = dropArguments(cat, 0, String.class); assertEquals("yz", (String) d0.invokeExact("x", "y", "z")); MethodHandle d1 = dropArguments(cat, 1, String.class); assertEquals("xz", (String) d1.invokeExact("x", "y", "z")); MethodHandle d2 = dropArguments(cat, 2, String.class); assertEquals("xy", (String) d2.invokeExact("x", "y", "z")); MethodHandle d12 = dropArguments(cat, 1, int.class, boolean.class); assertEquals("xz", (String) d12.invokeExact("x", 12, true, "z")); I'll probably do something similar to the other code examples, and fold them all into a JDK unit test. -- John On Aug 13, 2010, at 11:11 PM, Howard Lovatt wrote: > There are some minor Java Doc Bugs in: > > http://cr.openjdk.java.net/~jrose/pres/indy-javadoc-mlvm/ > > In particular the Java Doc for: > > MethodHandles.dropArguments > > The example given is incorrect and should be something like: > > final MethodType types = MethodType.methodType( String.class, > String.class ); > final MethodHandle cat = lookup().findVirtual( String.class, > "concat", types ); > System.out.println( cat.<String>invokeExact( "x", "y" ) ); // xy > final MethodHandle d0 = dropArguments( cat, 0, String.class ); > System.out.println( d0.<String>invokeExact( "x", "y", "z" ) ); // yz > final MethodHandle d1 = dropArguments( cat, 1, String.class ); > System.out.println( d1.<String>invokeExact( "x", "y", "z" ) ); // xz > final MethodHandle d2 = dropArguments( cat, 2, String.class ); > System.out.println( d2.<String>invokeExact( "x", "y", "z" ) ); // xy > final MethodHandle d12 = dropArguments( cat, 1, String.class, > String.class ); > System.out.println( d12.<String>invokeExact( "w", "x", "y", "z" ) ); // > wz > > There are some detail changes in the above but the most important > thing is that the comments given as the output are corrected (the > original comments implied numbering of arguments in reverse order). > > -- Howard. > _______________________________________________ > mlvm-dev mailing list > mlvm-dev@openjdk.java.net > http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev _______________________________________________ mlvm-dev mailing list mlvm-dev@openjdk.java.net http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev