I committed my changes, but I need you to look at it. I commented out the test to get it to compile, but besides that, there’s definitely a problem:
198: ERROR - Parse error. invalid assignment target [java] this.xml2.child('a') = this.xml2.child('a').plus(new XML( '<a id="456"/>')); The original code is the following: xml2.a += <a id="456"/>; I’m not sure how to best handle this. There are two cases we need to deal with: 1. Variable assignment. 2. XML children assignment. Case 1 should simply be foo = foo.plus(bar); However, case 2 cannot become xml.child(foo) = ... It could wrap the whole thing in a setChild() call, but that gets kind of complicated. Not sure of any other way, though... Additionally, my changes are working at all in the simple case of: list1 += list4 which still becomes: list1.concat(list4); A simple “+” is even worse: var fud:XMLList = list1 + list4; becomes: var /** @type {XMLList} */ fud = list1 + list4; Thanks, Harbs On May 12, 2016, at 1:40 PM, Harbs <harbs.li...@gmail.com> wrote: > Well I tried this, but something is wrong. > > I changed the tests to reflect my changes and I’m getting an error in the > tests (in TestFlexJSGlobalClasses). How can I see the results of the test to > see what’s wrong? > > On May 10, 2016, at 6:09 PM, Alex Harui <aha...@adobe.com> wrote: > >> >> >> On 5/10/16, 8:03 AM, "Harbs" <harbs.li...@gmail.com> wrote: >> >>> foo = foo.plus(bar); >> >> OK, well in theory the compiler generated "foo" and is about to add >> ".concat(" so you would get "foo.concat(" then "bar" would get emitted. >> Try replacing ".concat" with: >> >> " = " >> getWalker().walk(node.getLeftOperandNode()); // should re-output "foo" >> "; " >> getWalker().walk(node.getLeftOperandNode()); // should re-output "foo" >> ".plus(" >> >> >> Or something like that. If that doesn't work I will try to look at it >> later today. >> >> -Alex >> >