I don't think using a Binding should be necessary. I think the bug is the getName() of MXMLPropertySpecifierNode isn't returning the right kind of Name when the property is protected or private.
- Gordon On 9/26/13 11:13 AM, "Alex Harui" <aha...@adobe.com> wrote: >Darrell, Gordon (mostly), > >I'm having trouble with the codegen for a Binding destination function. I >have an MXMLPropertySpecifierNode for the property to be set. This >property can be protected or private as well as public. I want to use the >OP_setproperty instruction which seems to take a Name. However, the >MXMLPropertySpecifierNode's getName() returns a Name that isn't qualified >as protected or private. In looking around, I see that other code that >uses OP_setproperty seems to have a Binding and the getName() of that >Binding is used. > >I passed in the LexicalScope from the class and called getBinding on the >MXMLPropertySpecifierNode's getDefinition() and that worked for protected >and private members of the class, but what I'm seeing is that if the >public variable is [Bindable] and comes from a class in a SWC then the >MXMLPropertySpecifierNode has a VariableDefinition (instead of a >SynthesizedBindableSetterDefinition) and getBinding returns a binding with >the namespace set to the BindableNamespace instead of a public setter. > >I'm wondering if the MXMLPropertySpecifierNode's definition should be >something other than a VariableDefinition when coming from a SWC, or the >code should somehow special case that VariableDefinition and go hunting >for a SetterDefinition, or something else. > >Thanks, >-Alex >