[Laszlo-dev] For Review: Change 20080310-dda-1 Summary: SWF9: Create constructors for interstitial classes

Philip Romanik promanik at laszlosystems.com
Tue Mar 11 07:42:45 PDT 2008


I took your change and removed the manually created constructors from 
the data mixin classes. However, I get a number of errors because the 
default values are not specified.

You can see this yourself if you make the following changes.

In /data/LzDataNode.js, comment out the constructor for LzDataNodeMixin.
In /data/LzDataElement.js, comment out the constructor for LzDataElementMixin

If I leave the manual constructors in the code, I also get a number 
of errors. This is ok because the constructors in the mixin classes 
is just a workaround.

Phil



>Change 20080310-dda-1 by <mailto:dda at lester.local>dda at lester.local 
>on 2008-03-10 09:47:18 EDT
>
>     in /Users/dda/laszlo/src/svn/openlaszlo/branches/devildog
>
>     for 
> <http://svn.openlaszlo.org/openlaszlo/branches/devildog>http://svn.openlaszlo.org/openlaszlo/branches/devildog
>
>
>
>Summary: SWF9: Create constructors for interstitial classes
>
>
>
>New Features:
>
>
>
>Bugs Fixed:
>
>
>
>Technical Reviewer: ptw (pending)
>
>QA Reviewer: promanik (pending)
>
>Doc Reviewer: (pending)
>
>
>
>Documentation:
>
>
>
>Release Notes:
>
>
>
>Details:
>
>     The use of mixins cause 'interstitial' classes to be created to
>
>     simulate the mixin.  These classes sit in the inheritence tree
>
>     between the class that uses the mixin and the 'real' super class.
>
>     If the super class has a constructor with >0 args, and the mixin
>
>     does not declare a constructor, then there will be compilation errors.
>
>     This change automatically creates a constructor with the right
>
>     number of args, etc. when there is not one in the mixin.
>
>
>
>     If a mixin declares a constructor, it is obligated to call super
>
>     with a compatible arg list for any super class it might be used with.
>
>
>
>     Also this change fixes a blemish with multiple mixins.
>
>      class C1 with M1,M2 extends S1
>
>     used to create an interstitial named 'lzsc$mixin$M1$lzsc$mixin$M2$S1',
>
>     now it creates the more compact, and originally intended name:
>
>     'lzsc$mixin$M1$M2$S1'.
>
>
>
>Tests:
>
>     Regression: henry's hello (SWF9) + smokecheck(SWF8,DHTML)
>
>     Functionality: Temporarily inserted a sample set of mixins, 
> superclasses and classes
>
>     that use them into LzNode.js and made sure generated code was 
> correct and compiled.
>
>
>
>Files:
>
>M      WEB-INF/lps/server/src/org/openlaszlo/sc/SWF9Generator.java
>
>
>
>Changeset: 
><http://svn.openlaszlo.org/openlaszlo/patches/20080310-dda-1.tar>http://svn.openlaszlo.org/openlaszlo/patches/20080310-dda-1.tar
>
>
>--
>
>Don Anderson
>Java/C/C++, Berkeley DB, systems consultant
>
>voice: 617-547-7881
>email: <mailto:dda at ddanderson.com>dda at ddanderson.com
>www: <http://www.ddanderson.com>http://www.ddanderson.com
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.openlaszlo.org/pipermail/laszlo-dev/attachments/20080311/5a3e09ae/attachment.html


More information about the Laszlo-dev mailing list