Re: Clarification Parameter.getName(…)

John Rose john.r.rose at oracle.com
Mon Jun 10 14:36:07 PDT 2013


On Jun 10, 2013, at 12:18 PM, Alex Buckley <alex.buckley at oracle.com> wrote:

> John,
> 
> I propose to satisfy reflection of Java parameters (names are not meaningful, but always extant) _and_ non-Java parameters (names are meaningful, even if not extant) by:
> 
> 1. Continuing to have Parameter.getName always return a name, even if synthesized.
> 
> 2. Adding Parameter.isNamePresent to return false if a parameter's name_index item in MethodParameters is zero (or if there is no MethodParameters attribute at all).
> 
> I plan to file a CCC request for this very soon, so please let me know what you think.

Thanks; I think this is good.

The default name argN doesn't get in the way if there is a way to check whether it is a default.  So the names can be a clean channel for non-Java API information like keyworded arguments.  And not every argument is required to be equally nominal.

(I note that normal symbol mangling rules might apply if there is a need for symbolic freedom, for names containing "dangerous characters".)

— John


More information about the jdk8-dev mailing list