This might be a good candidate for getting the static initialization code
block working (it is currently not in js).

We discussed that recently in another thread.

public class MyClass{

{//static init block
COMPILE::JS{
  Object.defineProperty(MyClass.prototype,"0",
        {
                "get": function(){return this},
                "set": function(){},
                enumerable: true,
                configurable: true
        }
);
}
}

public function  MyClass (){

}

}

On Tue, Dec 10, 2019 at 6:00 AM Alex Harui <[email protected]> wrote:

> Did you try:
>
> function get 0():XML { return this; }
> function set 0(value:XML) {}
>
> Within a COMPILE::JS, I think the variables:
>
>    this["constructor"]
>    this["__proto__"]
>
> are available.
>
> HTH,
> -Alex
>
> On 12/9/19, 8:27 AM, "Harbs" <[email protected]> wrote:
>
>     In my question to minimize memory requirements in XML, I’d like to
> optimize the zero index accessor.
>
>     Right now, we have Object.defineProperty in the XML constructor. The
> byproduct of that is we have a function defined on every single instance of
> XML. Ideally that should be on the prototype object. This should
> drastically reduce the memory requirements for instantiating XML.
>
>     In JS, that’s pretty easy to do:
>
>     Object.defineProperty(thePrototype,"0",
>         {
>                 "get": function(){return this},
>                 "set": function(){},
>                 enumerable: true,
>                 configurable: true
>         }
>     );
>
>     I’m struggling with how to do it in AS3. How can we get a reference to
> the prototype outside the constructor or have the compiler construct this
> kind of function automatically?
>
>     Thoughts?
>     Harbs
>
>

Reply via email to