One thought is that we might store both the 'name' and the 'qName' in the class metadata (where currently only the interfaces - if any - live) and adopt the 'getValue' routines to search that instead of the entire namespace chain. This would get rid of the need for the dreaded '__proto__' as well...
Thoughts? EdB On Wed, Nov 13, 2013 at 4:47 PM, Erik de Bruin <e...@ixsoftware.nl> wrote: > Hi, > > Alex, I hope I'm wrong, but... > > I was looking at the DataGridExample example and I couldn't get it to > run from the release code. It runs fine from the debug code, just not > the release code. I did a lot of digging and stepping through the code > until I finally hit the 'init' method on the SimpleCSSValueImpl class. > This stores the namespace string from the CSS property in the > subsequent namespace objects in JS, if I understand the code > correctly. This works fine in debug mode, where all the namespaces > live unaltered in the window object. > > In release mode, however, things work differently. The Closure > Compiler minifies the code, so the namespace > 'org.apache.flex.core.UIBase' will get renamed to 'ae' (or something). > This causes the 'getQualifiedClassName' methods to fail, as it will > try to recreate 'org.apache.flex.core.UIBase' from something that has > been optimised into nothing... > > I'm looking for a solution, but I don't think there is going to be a simple > one. > > For future reference: don't debug FlexJS with the debug code, rather > use the release code and the source map. That way you won't be too > committed to a certain approach before someone notices if likely won't > work as advertised. > > Thanks, > > EdB > > > > -- > Ix Multimedia Software > > Jan Luykenstraat 27 > 3521 VB Utrecht > > T. 06-51952295 > I. www.ixsoftware.nl -- Ix Multimedia Software Jan Luykenstraat 27 3521 VB Utrecht T. 06-51952295 I. www.ixsoftware.nl