[Laszlo-dev] Is there a way to make this work in both swf8 and swf9 ?
P T Withington
ptw at pobox.com
Mon Oct 6 08:38:53 PDT 2008
Swf8 is a js1
On Oct 6, 2008, at 9:18 AM, Donald Anderson <dda at ddanderson.com> wrote:
> Okay it's
> http://www.openlaszlo.org/jira/browse/LPP-7127
>
> Subject says it is JS1 problem, but it looks from the end of the
> description that
> there is also a problem in SWF8?
> Bottom line is both code fragments should work in all runtimes.
>
> On Oct 6, 2008, at 5:50 AM, P T Withington wrote:
>
>> Don, you should probably create a bug for the JS1 back-end to fix
>> this. Right now, when a class is translated to JS1, the initial
>> values for slots are passed as arguments to the class constructor,
>> and hence evaluated in a context before the class is defined.
>> Instead the initial values should be moved into the same context
>> that top-level statements in the class body are evaluated in (which
>> is what the work-around that André describes is doing by hand).
>>
>> On 2008-10-05, at 18:27EDT, André Bargull wrote:
>>
>>> This pattern is used for the service classes: first declaration,
>>> then the definition. Works there for swf8 and swf9.
>>>
>>> <script when="immediate" ><![CDATA[
>>> public class LzQName {
>>> static var XSD_STRING;
>>> LzQName.XSD_STRING = new LzQName("string",
>>> LzNamespace.URI_DEFAULT_SCHEMA_XSD);
>>> function LzQName(type:String, uri:String) {
>>> }
>>> }
>>> ]]></script>
>>>
>>>> >/
>>>> />/
>>>> />/ It should work in both runtimes to just leave out the name of
>>>> the class,
>>>> />/ since static vars are 'in scope' of the class body.
>>>> />/
>>>> /
>>>> OK that works for that case, but there's another case that's
>>>> causing an
>>>> error in swf8, which is when the thing tries to instantiate an
>>>> instance of
>>>> itself as a static var initializer, e.g.,
>>>>
>>>> public class LzQName {
>>>> static var XSD_STRING =
>>>> new LzQName("string", LzNamespace.URI_DEFAULT_SCHEMA_XSD);
>>>>
>>>>
>>>> <a title="#75">ERROR @rpc/library/qname.js#130: call to undefined
>>>> function
>>>> 'LzQName'</a>
>>>>
>>>
>>
>>
>
>
> --
>
> Don Anderson
> Java/C/C++, Berkeley DB, systems consultant
>
> voice: 617-547-7881
> email: dda at ddanderson.com
> www: http://www.ddanderson.com
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.openlaszlo.org/pipermail/laszlo-dev/attachments/20081006/d5bd1572/attachment-0001.html
More information about the Laszlo-dev
mailing list