Commit Graph

23 Commits

Author SHA1 Message Date
Zhivka Gucevska e68b664383 Add support for execution of constructor body
BUG=
R=dmitryas@google.com

Review-Url: https://codereview.chromium.org/2880343002 .
2017-05-18 15:30:22 +02:00
Zhivka Gucevska 4030e2de6c Modify new instance allocation
A fresh new instance should be allocated after the evaluation of the
argument list for the constructor.

This change modifies the ConstructorInvocation application continuation
to allocate a new object and introduces :
 * continuation applications for Redirecting and Super constructor
invocations, applied on evaluated arguments for Redirecting and Super
constructors respectively
 * expression continuation for instance initialization, applied to the
new instance

BUG=
R=dmitryas@google.com

Review-Url: https://codereview.chromium.org/2888913002 .
2017-05-18 12:31:20 +02:00
Dmitry Stefantsov 60be18b4a9 Add tool to extract LaTeX-formatted text from comments in Dart programs
R=zhivkag@google.com

Review-Url: https://codereview.chromium.org/2889953002 .
2017-05-18 10:48:29 +02:00
Zhivka Gucevska d4b73fd9ee Refactor string concatenation evaluation
BUG=
R=dmitryas@google.com

Review-Url: https://codereview.chromium.org/2883813004 .
2017-05-16 12:53:44 +02:00
Zhivka Gucevska 614f9207b6 Add support for super constructor invocation
BUG=
R=dmitryas@google.com

Review-Url: https://codereview.chromium.org/2881053002 .
2017-05-15 13:58:42 +02:00
Zhivka Gucevska c545954a2a Add tests for initializer list execution in object initialization
BUG=
R=dmitryas@google.com

Review-Url: https://codereview.chromium.org/2883823003 .
2017-05-15 12:14:18 +02:00
Zhivka Gucevska 1dc564bc13 Fix local initializer execution
BUG=
R=dmitryas@google.com

Review-Url: https://codereview.chromium.org/2874253002 .
2017-05-15 09:54:09 +02:00
Zhivka Gucevska eae9c60eb7 Add suport for initializer list execution in constructor invocation
BUG=
R=dmitryas@google.com

Review-Url: https://codereview.chromium.org/2877733002 .
2017-05-11 12:39:24 +02:00
Zhivka Gucevska 62c0be200e Add support for redirecting constructors and instance field initialization
Instance fields only in immediately enclosing class are initialized.

BUG=
R=dmitryas@google.com

Review-Url: https://codereview.chromium.org/2870263003 .
2017-05-11 11:45:31 +02:00
Zhivka Gucevska 8ea3c3b3e6 Refactor argument evaluation for static invocation
BUG=
R=dmitryas@google.com, kmillikin@google.com

Review-Url: https://codereview.chromium.org/2871953002 .
2017-05-10 11:11:32 +02:00
Zhivka Gucevska 184cc25766 Add initial tests for Kernel interpreter
Add logging in the Interpreter for:
 - StaticInvocationExpression, including calls to print
 - ReturnStatement
 - IfStatement

BUG=
R=dmitryas@google.com

Review-Url: https://codereview.chromium.org/2841803002 .
2017-05-01 16:12:27 +02:00
Zhivka Gucevska 2860c9cb1b Add support for static invocation with arguments
BUG=
R=dmitryas@google.com

Review-Url: https://codereview.chromium.org/2832873004 .
2017-04-24 10:14:23 +02:00
Zhivka Gucevska 4f59c41c5f Remove state for expression evaluation
BUG=
R=dmitryas@google.com, kmillikin@google.com

Review-Url: https://codereview.chromium.org/2833733003 .
2017-04-21 10:11:06 +02:00
Zhivka Gucevska b00a85231e Parametrize over the additional agrument type for StatementVisitor1 and ExpressionVisitor1
BUG=
R=dmitryas@google.com

Review-Url: https://codereview.chromium.org/2835453002 .
2017-04-20 18:03:15 +02:00
Zhivka Gucevska feb38e4c8b Implement expression evaluation in Coninuation Passing Style
This enables support for Return statements.

BUG=
R=dmitryas@google.com, kmillikin@google.com

Review-Url: https://codereview.chromium.org/2806483003 .
2017-04-20 15:22:33 +02:00
Zhivka Gucevska c91fd31036 Implement flow control with breaks
BUG=
R=dmitryas@google.com, kmillikin@google.com

Review-Url: https://codereview.chromium.org/2790063002 .
2017-04-05 13:00:44 +02:00
Zhivka Gucevska b01acf32d7 Fix Setter lookup
BUG=
R=kmillikin@google.com

Review-Url: https://codereview.chromium.org/2795883003 .
2017-04-04 14:52:50 +02:00
Zhivka Gucevska 1851ca685e Change layout of fields in a object values
BUG=
R=kmillikin@google.com

Review-Url: https://codereview.chromium.org/2781453002 .
2017-03-28 11:19:16 +02:00
Zhivka Gucevska 23cc114c2f Implements simple statement executer
This change adds support for executing:
 - BlockStatement
 - ExpressionStatement
 - IfStatement
 - VariableDeclaration

Currently only BlockStatement introduces a new environment and
VariableDeclaration modifies the environment.

BUG=
R=kmillikin@google.com

Review-Url: https://codereview.chromium.org/2775293002 .
2017-03-28 10:23:15 +02:00
Zhivka Gucevska 02251a05eb Add support for implicit getters and setters
BUG=
R=kmillikin@google.com

Review-Url: https://codereview.chromium.org/2764073002 .
2017-03-24 16:04:02 +01:00
Zhivka Gucevska 80a334512a Add representation for object values
It also adds few operators for the Basic literals for testing purposes.

BUG=
R=kmillikin@google.com

Review-Url: https://codereview.chromium.org/2764823002 .
2017-03-21 13:17:33 +01:00
Zhivka Gucevska bd3cfd6979 Implements support for variables and evaluation of logic expressions
BUG=
R=kmillikin@google.com

Review-Url: https://codereview.chromium.org/2740433006 .
2017-03-15 12:50:16 +01:00
Zhivka Gucevska 1b82e0c3a0 Initial implementation of interpreter for Kernel
Basic framework, evaluation of BasicLiterals and dummy evaluation
of print.

BUG=
R=kmillikin@google.com

Review-Url: https://codereview.chromium.org/2722283003 .
2017-03-02 13:19:27 +01:00