another AS3 annoyance

XMLLists. What the fuck: from the documentation,

The XMLList class contains methods for working with one or more XML elements. An XMLList object can represent one or more XML objects or elements (including multiple nodes or attributes), so you can call methods on the elements as a group or on the individual elements in the collection.

If an XMLList object has only one XML element, you can use the XML class methods on the XMLList object directly. In the following example, example.two is an XMLList object of length 1, so you can call any XML method on it.

Which is great, if I don’t care about properly typing my variables.

TypeError: Error #1034: Type Coercion failed: cannot convert XMLList@1f51a779 to XML.

And of course there’s no builtin way to convert a length-of-one XMLList into a normal XML object. Have to resort to the ugly (but simple)

var xml:XML = new XML(bullshitXMLList.toXMLString());

And really. Why wouldn’t XMLList inherit from XML? Seriously?