On 2022-01-19 9:32 p.m., Dan Book wrote: > On Thu, Jan 20, 2022 at 12:20 AM Darren Duncan wrote: > On 2022-01-19 12:43 p.m., Alexander Hartmaier wrote: > > I have one sad example to add: defining a sub that is passed as a > callback to a > > module which doesn't document the (number of) arguments and call it in > different > > parts with a different number of arguments. Example I'm just dealing with is > > Mojo::RabbitMQ::Client. > > In the end I gave up and didn't specify a signature to avoid exceptions > caused > > by the different number of arguments. > > So here's a question. The way signatures work now, if one puts "@" at the end > of the signature, does that say silently accept but throw away the extra > arguments, or is there some way in a signature to say explicitly that you > take a > variable number of arguments and there is an array you can get "the rest" in? > > ($arg, @rest) Okay, so in that case, I disagree with what Alexander said. It sounds like there is nothing you can't do with signatures that you could do before. If you declare the signature with an array to capture miscellaneous extras, then problem doesn't exist. Alexander, do you agree? -- Darren DuncanThread Previous | Thread Next