Commit graph

2928 commits

Author SHA1 Message Date
Cyrus Najmabadi
fe57f3d2e4 Support modifiers on object literal methods and accessors, and question tokens on object literal methods.
This makes parsing of these constructs the same whether they are in an object literal or a class.

This is important for incrementla parsing for knowing if we can reuse these nodes if we run
into them.
2014-12-10 22:30:40 -08:00
Cyrus Najmabadi
4850dfbb8e Support modifiers on index signatures in an object type.
This makes index signature parsing non-contextual.  This is necessary so that
incremental parsing can reuse index signatures acros classes and object types.
2014-12-10 20:55:46 -08:00
Cyrus Najmabadi
ee828dc1da More incremental parser tests. 2014-12-10 19:15:44 -08:00
Cyrus Najmabadi
563b234240 Incremental parser tests should verify the same set of diagnostics are produced. 2014-12-10 19:07:36 -08:00
Cyrus Najmabadi
fc27f72324 Understand and handle modifiers on function declarations and variable statements within blocks.
This ensures reusability for functions/variables that may have been outside a block, but end up
inside one afterwards.  It also ensure the same tree is produced when incremental parsing.

i.e.  if you have:

declare function F() { }

And you add a { above it, then we current have an incremental parsing bug.  Namely we would see
a FunctionDeclaration node and say 'yes, we can reuse that node while parsing the block'.  This
is currently broken because the normal parse would not have normally accepted such a node (because
of the modifiers).

This was an example of contextual parsing of the same kind of node.  Something which we do not
want to do if we want incremental parsing to work properly.
2014-12-10 18:52:56 -08:00
Cyrus Najmabadi
3699a4079f Rename method. 2014-12-10 17:52:42 -08:00
Daniel Rosenwasser
9ad6eb21ed Merge pull request #1341 from Microsoft/escapingTheTemplateOfDoom
Template string escaping fixes
2014-12-10 16:29:00 -08:00
Vladimir Matveev
49eb487920 Merge pull request #1440 from Microsoft/add_missing_property
add missing property to harness language service
2014-12-10 14:57:26 -08:00
Vladimir Matveev
6520663de7 add missing property to harnessLS 2014-12-10 14:52:42 -08:00
Vladimir Matveev
51903106c7 Merge pull request #1395 from Microsoft/dev_mode
Add 'dev mode' to the language service
2014-12-10 14:34:23 -08:00
Anders Hejlsberg
ab4706a211 Merge pull request #1433 from Microsoft/typeGuardWithAny
Type guards should not affect values of type any
2014-12-10 14:33:31 -08:00
Anders Hejlsberg
2876ba6a6c Addressing CR feedback 2014-12-10 14:25:02 -08:00
CyrusNajmabadi
f51767c26c Merge pull request #1432 from Microsoft/isOpenVersion2
Only set parents for parse trees in the LS for the syntactic trees.
2014-12-10 13:02:47 -08:00
Anders Hejlsberg
37b5c74b93 Adding test case 2014-12-10 10:17:48 -08:00
Anders Hejlsberg
7c09b724dc Type guards do no affect values of type any 2014-12-10 10:16:51 -08:00
Cyrus Najmabadi
1170a1c436 Only set parents for parse trees in the LS for the syntactic trees.
we don't need this for the semantic trees because the compiler will set them all during
the binding.
2014-12-10 10:09:40 -08:00
CyrusNajmabadi
aea499e572 Merge pull request #1422 from Microsoft/incrementalTests
Initial test harness for incremental parser tests.
2014-12-09 23:07:34 -08:00
Cyrus Najmabadi
dd2c869d7b Use chai asserts. 2014-12-09 19:49:40 -08:00
Cyrus Najmabadi
aa30ac8a9c Add incremental test. 2014-12-09 19:37:26 -08:00
Cyrus Najmabadi
2a845726ab Add incremental test. 2014-12-09 18:36:32 -08:00
Cyrus Najmabadi
3c35b9097f Add incremental test. 2014-12-09 18:35:23 -08:00
Cyrus Najmabadi
58d36afbec Add incremental test. 2014-12-09 18:32:43 -08:00
Cyrus Najmabadi
3928f743ac Add incremental test. 2014-12-09 18:30:40 -08:00
Cyrus Najmabadi
01ead476cf Add incremental test. 2014-12-09 18:29:18 -08:00
Cyrus Najmabadi
b8bb8e9998 Add incremental test. 2014-12-09 18:27:59 -08:00
Cyrus Najmabadi
467d303c67 Add incremental test. 2014-12-09 18:26:50 -08:00
Cyrus Najmabadi
dad3faecf3 Add incremental test. 2014-12-09 18:25:10 -08:00
Cyrus Najmabadi
c489c4fcfe Add incremental test. 2014-12-09 18:24:16 -08:00
Cyrus Najmabadi
9b53947d51 Add incremental test. 2014-12-09 18:23:25 -08:00
Cyrus Najmabadi
afec0fb9f0 Add incremental test. 2014-12-09 18:17:11 -08:00
Cyrus Najmabadi
197b62e92a Add incremental test. 2014-12-09 18:13:09 -08:00
Cyrus Najmabadi
025dd23c1b Add incremental test. 2014-12-09 18:11:56 -08:00
Cyrus Najmabadi
78c4b92216 Add incremental test. 2014-12-09 18:10:15 -08:00
Cyrus Najmabadi
d6fa98d00b Add incremental test. 2014-12-09 18:07:48 -08:00
Cyrus Najmabadi
ec13fbee96 Add incremental test. 2014-12-09 18:05:45 -08:00
Cyrus Najmabadi
3e70073211 Add incremental test. 2014-12-09 18:03:52 -08:00
Cyrus Najmabadi
18f9acb7fc Add incremental test. 2014-12-09 18:00:08 -08:00
Cyrus Najmabadi
b8942992a0 Add incremental test. 2014-12-09 17:58:23 -08:00
Cyrus Najmabadi
418c0d9d91 Add incremental test. 2014-12-09 17:57:13 -08:00
Cyrus Najmabadi
5b2778c200 Add incremental test. 2014-12-09 17:45:50 -08:00
Cyrus Najmabadi
666363a7de Add incremental test. 2014-12-09 17:42:36 -08:00
Cyrus Najmabadi
e564fa5c9d Add incremental test. 2014-12-09 17:37:17 -08:00
Cyrus Najmabadi
c307d306c0 Add incremental test. 2014-12-09 17:34:26 -08:00
Cyrus Najmabadi
c436ff47a1 Add incremental test. 2014-12-09 17:33:15 -08:00
Cyrus Najmabadi
c7fcbb9f6b Add incremental test. 2014-12-09 17:29:52 -08:00
Cyrus Najmabadi
1cd2fb4333 Add incremental test. 2014-12-09 17:23:14 -08:00
Cyrus Najmabadi
c482a9e0e3 Add incremental test. 2014-12-09 17:22:15 -08:00
Cyrus Najmabadi
6058dbbc2f Add incremental test. 2014-12-09 17:21:30 -08:00
Cyrus Najmabadi
d5e2ab993e Add incremental test. 2014-12-09 17:20:44 -08:00
Cyrus Najmabadi
a1b8a7891b Add incremental test. 2014-12-09 17:19:44 -08:00