Another really weird one:

/**
 * @type {number}
 * @see https://www.w3.org/TR/geometry-1/#dom-dommatrixreadonly-m12
 */
DOMMatrixReadOnly.prototype.m12;

/**
 * @type {number}
 * @see https://www.w3.org/TR/geometry-1/#dom-dommatrixreadonly-m13
 */
DOMMatrixReadOnly.prototype.m13;

Becomes:

    /**
     * @see JSType - [number] 
     * @see https://www.w3.org/TR/geometry-1/#dom-dommatrixreadonly-m12 
     * @see [w3c_geometry1]
     */
    public var m12:Number;

    /**
     * @see JSType - [number] 
     * @see https://www.w3.org/TR/geometry-1/#dom-dommatrixreadonly-m13 
     * @see [w3c_geometry1]
     */
    public function get m13():Number{ return 0; };
    public function set m13(value:Number):void{};


Why did m12 get compiled as a var, while m13 became getters/setters?

(The var causes an error.)

That was just one sampling. Some properties get compiled as varsity and others 
as setters/getters.

I did not see any pattern.

> On Feb 18, 2026, at 4:47 PM, Harbs <[email protected]> wrote:
> 
> That issue came from fecthapi.js
> 
> Other files have other issues.
> 
>> On Feb 18, 2026, at 12:32 PM, Yishay Weiss <[email protected]> wrote:
>> 
>> Which externs file are you using?
>> ________________________________
>> From: Harbs <[email protected]>
>> Sent: Wednesday, February 18, 2026 12:12 PM
>> To: Apache Royale Development <[email protected]>
>> Subject: typedefs
>> 
>> I’m trying to add more js typedefs and I’m running into issues.
>> 
>> One issue I just ran into is:
>> 
>> /** @type {boolean} */
>> Body.prototype.bodyUsed;
>> 
>> 
>> /** @override */
>> Request.prototype.bodyUsed;
>> 
>> /** @override */
>> Response.prototype.bodyUsed;
>> 
>> 
>> Request and Response both:
>> * @implements {Body}
>> 
>> When compiling, we get an error because the Request and Response 
>> setters/getters are typed to “Object”, while the Body ones are correctly 
>> types as Booleans.
>> 
>> It seems like externc does not find the inherited types using @implements.
>> 
>> Is this a bug? Something not implemented? Is it easy to fix?
>> 
>> We can add more files to the list we maintain in royale-extras, but I’d like 
>> to reduce that rather than increase it.
>> 
>> Thoughts?
>> 
>> Harbs
> 

Reply via email to