It looked fine the first two times :-)

Om
On Jan 18, 2013 5:26 PM, "Gordon Smith" <gosm...@adobe.com> wrote:

> Something's screwy. After fixing and resending it still looks bad. The
> final instruction is "setproperty p".
>
> - Gordon
>
> -----Original Message-----
> From: Gordon Smith [mailto:gosm...@adobe.com]
> Sent: Friday, January 18, 2013 4:33 PM
> To: dev@flex.apache.org
> Subject: RE: Falcon progress
>
> Fixed a missing newline that made the generate code hard to understand...
>
> -----Original Message-----
> From: Gordon Smith [mailto:gosm...@adobe.com]
> Sent: Friday, January 18, 2013 4:28 PM
> To: dev@flex.apache.org
> Subject: Falcon progress
>
> Today I added MXML parser unit tests for MXMLPropertySpecifierNode in the
> case of properties of type Boolean, int, uint, Number, and String.
>
> Here's some background about property-specifier nodes in Falcon:
>
> Suppose a class has a property p of type int. Then you set can p on an
> instance (or a class definition) in three ways:
>
> (1) Instance tag + property tag + instance tag for value
>
> <MyComponent>
>     <p>
>         <int>1</int>
>     </p>
> </MyComponent>
>
> (2) Instance tag + property tag + text for value
>
> <MyComponent>
>     <p>1</p>
> </MyComponent>
>
> (3) Property attrribute
>
> <MyComponent p="1"/>
>
> Note that (1) is the general case  and is required for properties of
> non-scalar type. (2) and (3) are just terser equivalents that can be used
> when the property has a scalar type.
>
> These three MXML snippets all have the same semantics, and produce the
> same three nodes in the AST:
>
> MXMLInstanceNode "MyComponent"
>     MXMLPropertySpecifierNode "p"
>         MXMLIntNode 1
>
> which means "set the property p of the instance of MyComponent to the int
> 1".
>
> The code generator produces ABC such as
>
> // ... instance-ref
> dup
> // ... instance-ref instanceref
> push 1
> // ... instance-ref instance-ref property-value setproperty p // ...
> instance-ref
>
> (where the comments show what is on the stack) for each
> MXMLPropertySpecifierNode, although I haven't added functional tests of
> property nodes yet.
>
> - Gordon
>
>

Reply via email to