approved!

On Thu, Nov 12, 2009 at 5:13 PM, P T Withington <[email protected]> wrote:

> Change 20091112-ptw-v by [email protected] on 2009-11-12 15:47:12 EST
>    in /Users/ptw/OpenLaszlo/trunk
>    for http://svn.openlaszlo.org/openlaszlo/trunk
>
> Summary: Allow forward references to superclasses in LZX
>
> Bugs Fixed: LPP-7745 Allow forward references to superclass when declaring
> a class in LZX
>
> Technical Reviewer: hminksy (pending)
> QA Reviewer: max (pending)
>
> Overview:
>
>    The LZX compiler already walks the code twice, to accumulate the
>    class declarations so it can adjust the schema to accept the new
>    tags the class declarations create.  We just need to defer some of
>    the work that builds the class model until the classes can be
>    sorted according to their dependency order.
>
>    Most of the large additions/deletions in this changeset consist of
>    just moving the class modelling from ViewSchema and ClassCompiler
>    into ClassModel so it can be deferred until all the class
>    definitions are known.
>
> Details:
>
>    ClassCompiler: Move all model-building to ClassModel.  All
>    ClassCompiler does now add the class to the schema in
>    updateSchema, and call the ClassModel compiler in compile.
>
>    ViewCompiler, NodeModel: Update for renamed ClassModel members.
>
>    ViewSchema_Test:  Comment out obsolete tests.
>
>    ViewSchema: Distinguish between needing the full class model and
>    just the unresolved model.  The unresolved model is sufficient for
>    syntax-checking class declarations, the resolved model is only
>    needed to check instantiations.  Move model-building to
>    ClassModel.  Add an interface to ensure all class models are
>    resolved (before you compile). After loading schema, ensure the
>    schema models are resolved.
>
>    Compiler: After updating the root schema, resolve all classes
>    before starting the compile pass.
>
>    ClassModel: Break out modelling that requires superclasses and
>    mixins to be modelled into a separate resolve phase which is
>    invoked by the schema compiler only after all the class
>    declarations have been added to the schema.
>
> Tests:
>    Smokecheck on all platforms.  Test case from the bug.
>
> Files:
> M      WEB-INF/lps/server/src/org/openlaszlo/compiler/ClassCompiler.java
> M      WEB-INF/lps/server/src/org/openlaszlo/compiler/ViewCompiler.java
> M      WEB-INF/lps/server/src/org/openlaszlo/compiler/ViewSchema_Test.java
> M      WEB-INF/lps/server/src/org/openlaszlo/compiler/ViewSchema.java
> M      WEB-INF/lps/server/src/org/openlaszlo/compiler/NodeModel.java
> M      WEB-INF/lps/server/src/org/openlaszlo/compiler/Compiler.java
> M      WEB-INF/lps/server/src/org/openlaszlo/compiler/ClassModel.java
>
>
> Changeset: http://svn.openlaszlo.org/openlaszlo/patches/20091112-ptw-v.tar
>
> _______________________________________________
> Laszlo-reviews mailing list
> [email protected]
> http://www.openlaszlo.org/mailman/listinfo/laszlo-reviews
>



-- 
Henry Minsky
Software Architect
[email protected]
_______________________________________________
Laszlo-reviews mailing list
[email protected]
http://www.openlaszlo.org/mailman/listinfo/laszlo-reviews

Reply via email to