[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [qmlweb/development/qmlweb2] src/qmljsc: Implement basics of a AST -> JS generator
From:       Jan Marker <jan () jangmarker ! de>
Date:       2015-09-30 20:31:10
Message-ID: E1ZhO1u-0002hV-Bi () scm ! kde ! org
[Download RAW message or body]

Git commit 2c9cc50c5bf410e278af588faf46b4308beeeeff by Jan Marker.
Committed on 30/09/2015 at 20:31.
Pushed by jangmarker into branch 'development/qmlweb2'.

Implement basics of a AST -> JS generator

Summary:
For a list of currently supported language features,
please see the commits below.

It relates to T509

[Compiler] Start

[Compiler] Add basic integration test for JS Generator

[Compiler] Make first integration test work

* assignments
* post-/predecrements
* post-/preincrements

[Compiler] Adopt integration name class to naming schema

[Compiler] Start work on functions

[Compiler] Refactor to use stack only

This allows for a more consequent concept.

* add handling of lists for SourceElements and StatementList
  needed to have same pass level of integration tests as
  before the refactoring
* change macros to reflect new concept
* introduces a new error type InternalError
  this error is created if the stack was not correctly reduced,
  which should not happen in practice

[Compiler] Finish work on functions

[Compiler] Better logic for nullptr members

* no more "" on stack
* more expressive logic
* generates code for var i correctly

[Compiler] Complete binary operations

[Compiler] Make function declarations more robust

* handle multiple parameters more correctly
* handle empty body correctly
* move integration test for EmptyStatement in its own file

[Compiler] Make functoin declaration lists work

[Compiler] Make return statements work

[Compiler] Implement branching

[Compiler] Make switch statement work

[Compiler] Make test better readable and maintainable

Reviewers: akreuzkamp

Reviewed By: akreuzkamp

Differential Revision: https://phabricator.kde.org/D350

M  +1    -0    src/qmljsc/CMakeLists.txt

http://commits.kde.org/qmlweb/2c9cc50c5bf410e278af588faf46b4308beeeeff
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic