Approved, but I do have a couple of comments on LzDataElement.lzs
(not your bug) Shouldn't this line in LzMiniNode, prototype.setAttribute = LzNode.prototype.setAttribute; be var setAttribute = LzNode.prototype.setAttribute ---------- LzDataElement defines variables nodeName, childNodes, and attributes. But these are actually used in LzDataElementTrait. Shouldn't these lines, var nodeName = null; var childNodes = null; var attributes = null; be moved to LzDataElementTrait? LzDataElement extends LzDataElementTrait and LzDataNode. Both of these parent classes use childNodes. Is this why classNodes is defined in LzDataElement and not LzDataElementTrait? >Change change.GBQ162YZu.txt by [EMAIL PROTECTED] /Users/ptw/ >pending-changes/ on 2006-09-14 06:47:35 EDT > >Summary: Implement LZS 'traits syntax', directive blocks in class >declarations > >New Features: >The LZS compiler now supports `interface` declarations, with the extension >that you are allowed to include implementation in an interface. This is >how you define a `trait` in lzs. > >Bugs Fixed: >LPP-2396 lzs syntax for trait declarations >LPP-2399 Allow directive blocks in class declarations > >Technical Reviewer: promanik (pending) >QA Reviewer: henry (pending) >Doc Reviewer: jsundman (pending) > >Documentation: > >.lzs source (LaszloScript, our variant of ECMAScript 1+) now supports >class and interface declarations, as proposed by ECMAScript 2. We permit >implementation in interfaces, as has been proposed to the ECMA >committee. Finally, the class `extends` clause can be a list, consisting >of a superclass and any number of interfaces, whose implementation will be >'mixed in'. > >Details: > LzNode: moved `if ($debug)` back to their original position, > inside the class declaration. > > LzDataElement: re-wrote LzDataElementTrait as an `interface` > declaration. > > Parser.jjt: support for `interface` declarations, directives in > class and interface declarations. > > JavascriptGenerator, CodeGenerator: Move class clause processing > out to a subroutine that can recurse when encountering a directive > block, conditional block or pragma. Make generic for class or > interface. > >Tests: > Changed two LFC files to use interface declarations and directive > blocks in class declarations. Inspected the output of the dhtml > compiler for accuracy. > > ant make, ant test, and LZPIX all functional. > >Files: >M lfc/core/LzNode.lzs >M lfc/data/LzDataElement.lzs >M server/sc/src/org/openlaszlo/sc/Parser.jjt >M server/src/org/openlaszlo/sc/Compiler.java >M server/src/org/openlaszlo/sc/JavascriptGenerator.java >M server/src/org/openlaszlo/sc/CodeGenerator.java > _______________________________________________ Laszlo-dev mailing list [email protected] http://www.openlaszlo.org/mailman/listinfo/laszlo-dev
