Commit Graph

3034 Commits

Author SHA1 Message Date
Konstantin Shcheglov 270a6900f6 Fix cascade tests with Fasta.
There are still failing cascade tests, but these are because of parsing
differences, not because of problems with the test implementation.

R=paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2726753003 .
2017-03-01 11:45:35 -08:00
Konstantin Shcheglov 93bf98045c Fix parseAssignableSelector() tests and parse '?.' with Fasta.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2727663005 .
2017-03-01 11:33:22 -08:00
Konstantin Shcheglov 3d0a94278e Parse FunctionExpressionInvocation with Fasta.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2728703002 .
2017-03-01 11:19:27 -08:00
Konstantin Shcheglov cc7c61124b Always parse 'x.y' as a prefixed identifier.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2722153003 .
2017-03-01 10:42:51 -08:00
Dmitry Stefantsov 9c340f9eb1 Revert last 4 commits by @lrn
Reverted commits:
* ef097edad6. ("Make Analyzer, VM and
  dart2js accept URI strings as part-of library identifier.")
* e8e1857814. ("Fix bad example of URI
  part-of to be bad, not good.")
* 58f7a92ede. ("Add changelog entry for
  allowing URI in part-of.")
* a4a7d98dce. ("Use FutureOr in
  Completer.complete.")

TBR=lrn@google.com

Review-Url: https://codereview.chromium.org/2724853002 .
2017-03-01 16:44:52 +01:00
Lasse R.H. Nielsen ef097edad6 Make Analyzer, VM and dart2js accept URI strings as part-of library identifier.
R=brianwilkerson@google.com, floitsch@google.com, hausner@google.com, johnniwinther@google.com, sigmund@google.com

Review-Url: https://codereview.chromium.org/2640853005 .
2017-03-01 12:15:11 +01:00
Paul Berry 8849a29406 Implement AstBuilder.handleOperatorName.
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2723873002 .
2017-02-28 16:36:03 -08:00
Konstantin Shcheglov 36cec1faef Parse ParenthesizedExpression as Fasta.
R=paulberry@google.com, ahe@google.com
BUG=

Review-Url: https://codereview.chromium.org/2726693002 .
2017-02-28 15:08:23 -08:00
Paul Berry fb1bc6ad83 Add preliminary support for method declarations to AstBuilder.
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2706293014 .
2017-02-28 15:05:31 -08:00
Konstantin Shcheglov 4d4275d36e Replace the sequence isInstanceOf/assign with assist-with-cast in ExpressionParserTestMixin.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2719403004 .
2017-02-28 14:31:41 -08:00
Konstantin Shcheglov 25fb3dabdb Parse ThisExpression with Fasta.
R=paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2719083007 .
2017-02-28 13:52:01 -08:00
Konstantin Shcheglov e260980624 Parse SuperExpression with Fasta.
R=paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2721973002 .
2017-02-28 13:48:57 -08:00
Konstantin Shcheglov f7d379a494 Run ExpressionParserTestMixin tests with Fasta.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2726543003 .
2017-02-28 13:33:52 -08:00
Konstantin Shcheglov 69063303ac Add support for field formal function typed formal parameters.
Plus a couple of new tests.

R=paulberry@google.com, ahe@google.com
BUG=

Review-Url: https://codereview.chromium.org/2720763003 .
2017-02-27 14:01:26 -08:00
Konstantin Shcheglov b86388e3ed Support for function typed formal parameters.
R=paulberry@google.com, ahe@google.com
BUG=

Review-Url: https://codereview.chromium.org/2715203003 .
2017-02-27 12:50:08 -08:00
Konstantin Shcheglov 6d231ad0ef Extract ExpressionParserText from SimpleParserTest.
So that we can run this portion of tests with Fasta.

R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2717233004 .
2017-02-27 12:47:57 -08:00
Brian Wilkerson 44148ec0a4 Revert "Add error for mixins defining conflicting private names (issue 28809)"
Review-Url: https://codereview.chromium.org/2716133002 .
2017-02-25 07:50:42 -08:00
Brian Wilkerson 12b6f249f3 Add error for mixins defining conflicting private names (issue 28809)
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2716453006 .
2017-02-25 07:27:58 -08:00
Konstantin Shcheglov 8532481a87 Support multiple optional parameters.
R=paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2712023003 .
2017-02-24 16:34:58 -08:00
Konstantin Shcheglov 8d4e252fd1 Support for the 'covariant' keyword for formal parameters.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2716043003 .
2017-02-24 12:50:17 -08:00
Paul Berry 0c1facfd9b Split parser tests that exercise class members to their own class.
In future CLs I will get these tests to pass.

R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2713553011 .
2017-02-23 14:22:16 -08:00
Konstantin Shcheglov 4500bb0920 Parse optional and named parameters.
I'm not a big fan of the currentParameterKind stack, this information is
almost accessible from parseFormalParameter(), but we don't pass the type
to the listener.

R=ahe@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2709783003 .
2017-02-23 09:55:15 -08:00
Konstantin Shcheglov 86c1ef03ee Add support for FieldFormalParameter.
R=ahe@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2716433002 .
2017-02-23 09:42:43 -08:00
Paul Berry abcc4d4ad2 Add AstBuilder support for TypeArguments.
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2716483002 .
2017-02-22 15:50:26 -08:00
Brian Wilkerson 74bf8c9c44 Add test for issue 28821
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2707263005 .
2017-02-22 14:37:06 -08:00
Paul Berry 832e71deab Update Fasta parser expectations to reflect 5de9108c16.
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2710683008 .
2017-02-22 14:12:18 -08:00
Paul Berry 5e997051cf Add AstBuilder support for enum declarations.
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2711813002 .
2017-02-22 14:11:26 -08:00
Konstantin Shcheglov c59a7413f7 Support for modifiers.
R=paulberry@google.com, ahe@google.com
BUG=

Review-Url: https://codereview.chromium.org/2709843004 .
2017-02-21 19:08:30 -08:00
Paul Berry fdb370ca83 Implement handleQualified with 1 dot.
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2706343002 .
2017-02-21 15:02:27 -08:00
Konstantin Shcheglov 11dfac24bd Extract FormalParameter tests into FormalParameterParserTestMixin.
So, we can run these tests with analyzer's and fasta's parser.

R=paulberry@google.com, brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2707183002 .
2017-02-21 13:44:21 -08:00
Paul Berry d2309f3024 Add AstBuilder support for DottedName and ConditionalUri.
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2709623004 .
2017-02-21 13:43:08 -08:00
Konstantin Shcheglov 3fda231b1a Pass '=' to endNamedMixinApplication().
R=paulberry@google.com, ahe@google.com
BUG=

Review-Url: https://codereview.chromium.org/2710803002 .
2017-02-21 13:37:01 -08:00
Paul Berry 009d502f46 Implement FunctionTypeAlias in AstBuilder.
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2703393005 .
2017-02-21 12:55:35 -08:00
Paul Berry df0b8bbe4b Implement AstBuilder support for void keyword.
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2706293003 .
2017-02-21 12:31:41 -08:00
Paul Berry 67f46c19c1 Add preliminary support for methods to AstBuilder.
This is just enough support to get tests in TopLevelParserTest_Fasta.
I'll come back and fill in the details later when working specifically
on support for class members.

R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2707163002 .
2017-02-21 12:20:28 -08:00
Paul Berry 7647e90abb Handle TypeVariable and TypeVariables in AstBuilder.
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2705153004 .
2017-02-21 12:00:30 -08:00
Paul Berry eabf574d7b Capture const/final/var keyword in AstBuilder.endTopLevelFields.
R=ahe@google.com

Review-Url: https://codereview.chromium.org/2708703002 .
2017-02-20 07:38:04 -08:00
Paul Berry 9b04857653 Implement AstBuilder support for top level variables and function literals.
R=ahe@google.com

Review-Url: https://codereview.chromium.org/2699423002 .
2017-02-20 07:07:20 -08:00
P.Y. Laligand e0617d1f61 Fix a test. (#28826) 2017-02-18 11:39:22 -08:00
Paul Berry 60c2aae9f8 Implement AstBuilder support for library, part, and part-of declarations.
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2707663002 .
2017-02-18 10:26:19 -08:00
Brian Wilkerson f64bad806b Recover better from illegally named constructors (issue 28807)
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2700343003 .
2017-02-18 09:48:13 -08:00
P.Y. Laligand 131b0e600f Made GnWorkspace more robust to the addition of new packages. (#28824) 2017-02-17 19:30:51 -08:00
Paul Berry a047dd15c9 Add AstBuilder support for class declarations and named mixin applications.
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2703863003 .
2017-02-17 15:06:56 -08:00
Brian Wilkerson 0cd0811083 Re-enable generic function type support
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2700183002 .
2017-02-17 10:45:45 -08:00
Paul Berry 528bebc00f Add AstBuilder support for import and export directives.
Still not supported yet: conditional URIs.

R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2691423007 .
2017-02-17 10:23:30 -08:00
Paul Berry 901dc916cf Begin adding top-level function declaration support to AstBuilder.
R=ahe@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2701513006 .
2017-02-17 08:25:44 -08:00
Paul Berry 7d0b31e323 Begin running tests in TopLevelParserTest using the Fasta parser.
Most tests currently fail due to methods that are not yet implemented
in AstBuilder.  These tests are annotated with "@failingTest".  I will
begin filling out the implementation of AstBuilder (and removing the
"@failingTest" overrides) in follow-up CLs.

R=brianwilkerson@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2697323003 .
2017-02-16 14:19:54 -08:00
Paul Berry d5f44ff8be Create a new class for parser tests that test top level constructs.
These parser tests should be easy to port over to Fasta; the others
will be more difficult because they invoke parser methods that may not
have exact analogues in Fasta's parser.

This CL is almost entirely code motion; the only substantive changes
are the creation of the new class TopLevelParserTest, and the creation
of the new mixin ParserTestHelpers (for the helper methods needed by
TopLevelParserTest).

R=brianwilkerson@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2703553003 .
2017-02-16 11:31:11 -08:00
Peter von der Ahé 4d9bf71b12 Update parser_fasta_test in pkg/analyzer.
R=johnniwinther@google.com

Review-Url: https://codereview.chromium.org/2694703002 .
2017-02-13 13:04:28 +01:00
Paul Berry 45fef2c266 Eliminate commentAndMetadata() from parser tests.
This allows the parser tests to be rewritten in a way that will make
them easier to adapt to testing Fasta, because they no longer make
assumptions about data structures passed around inside the parser.

R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2684833004 .
2017-02-08 16:49:25 -08:00