review request (L): 7032323: code changes for JSR 292 EG adjustments to API, through Public Review

John Rose john.r.rose at oracle.com
Wed May 25 03:30:42 PDT 2011


This is the last major bundle of changes for JDK 7.
  http://cr.openjdk.java.net/~jrose/7032323/webrev.00/

(Note: This is an engineering code review.  The associated API documents are also under review and are about to be finalized by the Expert Group.  Here is a recent version:  http://cr.openjdk.java.net/~jrose/pres/indy-javadoc-mlvm/ )

Additions:
 - ConstantCallSite.<init>(MethodType, MethodHandle)  (hook for self-binding)
 - MethodHandles.asFixedArity  (inverse to asVarargsCollector)

Renames:
 - MethodHandles.convertArguments => MethodHandle.asType
 - MethodHandles.asInstance => MethodHandleProxies.asInterfaceInstance
 - MethodHandles.*wrapperInstance* => MethodHandleProxies.*wrapperInstance*

Semantic changes:
 - more explicit rules for asType and explicitCastArguments
 - rules for void returns on filter and fold transforms
 - MHs.spreadInvoker and MHs.invoker made more regular

Clarifications:
 - lots of @throws declarations
 - more example snippets in the javadoc
 - document varargs in more places

Bug fixes:
 - MH.toString method needs to be compliant
 - security manager checks as documented
 - unboxing of primitives as documented
 - permuteArguments failures on long/int mixes
 - more testing for invalid arguments
 - tweak guardWithTest

Deletions:
 - Some javadoc in MethodHandle and package-info deleted, when it is redundant with JDK7 version of JLS or JVMS



More information about the mlvm-dev mailing list