You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Derek Baum (JIRA)" <ji...@apache.org> on 2009/07/30 18:13:14 UTC

[jira] Assigned: (FELIX-1408) [gogo] coercion of args to match varargs method is inconsistent

     [ https://issues.apache.org/jira/browse/FELIX-1408?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Derek Baum reassigned FELIX-1408:
---------------------------------

    Assignee:     (was: Derek Baum)

My concern was that closures like:

g = { grep $args }

or

warn = { echo warning: $args }

should still work as expected, without grep/echo having to deal with the possibility that their args[0] contains a list of all the args.

I now see that this is possible without the coerce method having to expand list args.

So we're all in agreement.






> [gogo] coercion of args to match varargs method is inconsistent
> ---------------------------------------------------------------
>
>                 Key: FELIX-1408
>                 URL: https://issues.apache.org/jira/browse/FELIX-1408
>             Project: Felix
>          Issue Type: Bug
>          Components: Gogo
>            Reporter: Derek Baum
>            Priority: Minor
>
> gogo coerces the supplied arguments to match those required by the method.
> when the last parameter of a method is an array, gogo will coerce all remaining args into the array.
> For example:
> echo is defined as String echo(Object[] args);
> > echo d e f
> d e f
> above, gogo has coerced the 3 arguments into a single args[] array argument
> > list = [a b c]
> a
> b
> c
> > echo $list
> a b c
> here gogo passes the list directly, rather than as the first element of an array
> However, this is inconsistent when extra args are given:
> echo $list x
> x a b c
> The bug here is that the argument 'x' appears as the first, rather than the last argument to echo
>  echo x $list
> x [a, b, c]
> The bug here is that the list is no longer expanded.
> The result should be:
> x a b c

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.