super.fn_hello.apply(this, [index].concat(args));

Alternatively, you can modify the args array.

args.unshift(index);
super.fn_hello.apply(this, args);

--
Josh Tynjala
Bowler Hat LLC <https://bowlerhat.dev>


On Sun, Dec 1, 2024 at 6:12 AM Maria Jose Esteve <mjest...@iest.com> wrote:

> Perfect Josh, thanks.
>
> When the paramArray is, for example, the second parameter, what would that
> look like?
> For example:
> override protected function fn_hello(index:int, ... args){
>         // These are the tests I have done but none of them work for me
>         super.fn_hello.apply(index,args);
>         super.fn_hello.apply(index,[this].concat(args)); // Add "this"
> and, for example, index 0 is not the first parameter of args but "this" (as
> expected)}
> ,,,
>
> Hiedra
>
> -----Mensaje original-----
> De: Josh Tynjala <joshtynj...@bowlerhat.dev>
> Enviado el: viernes, 29 de noviembre de 2024 18:14
> Para: dev@royale.apache.org
> Asunto: Re: Parameters of type paramArray
>
> I think that this should do what you want:
>
> super.reevalAccesControl.apply(this, args);
>
>
> --
> Josh Tynjala
> Bowler Hat LLC <https://bowlerhat.dev>
>
>
> On Thu, Nov 28, 2024 at 7:26 AM Maria Jose Esteve <mjest...@iest.com>
> wrote:
>
> > Hi, I've always faced this problem, but I don't know how to give a
> > definitive solution.
> > Parameters of type paramarray increase their nesting from one call to
> > another, for example:
> >
> > Public class ControllerFirst extends ControllerBase {
> >                 ...
> >                 private function fnmove():void{
> >                                var foo:String = "hello";
> >                                 reevalAccessControl(foo);
> >                 }
> >                 ...
> > override protected function reevalAccessControl(... args):void{
> >                 // In the first call, from fnmove "arguments" you have
> > an element [0] with a value "hello"
> >                 super.reevalAccesControl(args);
> >                 ...
> > }
> > }
> >
> > Public class ControllerBase
> > {
> > ...
> > protected function reevalAccessControl(... args):void{
> >                 // When this function is called from ControllerFirst
> > arguments has an element [0] but this element in turn is an array of 1
> > element and the value "hello" is found in args[0][0] on a second level
> >                 ...
> > }
> > ...
> > }
> >
> > I don't know if I have explained myself... I understand why it happens
> > but I wonder if there is a way to pass this type of arguments so that
> > the nesting level 0 is respected and a level is not added for each call.
> >
> > Thx.
> > Hiedra
> >
> >
>

Reply via email to