Commit Graph

26317 Commits

Author SHA1 Message Date
Daniel Rosenwasser be1eb3430c Put 'sys' into the 'ts' module. 2014-12-11 13:43:34 -08:00
Daniel Rosenwasser c5510444d9 Use __filename for 'getExecutingFilePath'. 2014-12-11 13:43:29 -08:00
Yui T 907d1d001b Move grammar checking: callExpression, newExpression 2014-12-11 12:07:01 -08:00
Yui T b31981c6e9 Address code review 2014-12-11 11:35:51 -08:00
Cyrus Najmabadi 12f8bfb687 Unify accessor declaration parsing. 2014-12-10 23:33:30 -08:00
Vladimir Matveev 997aadb902 Merge pull request #1437 from Microsoft/formatting_conditionals
conditionals are now introduce indentation scope
2014-12-10 23:28:54 -08:00
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
Vladimir Matveev 638518cae2 Merge pull request #1441 from Microsoft/dont_indent_comments_on_errors
do not indent leading comments that attached to tokens with errors
2014-12-10 22:02:15 -08:00
Yui T 547e1296f8 Move grammar checking: Arrow function 2014-12-10 21:52:18 -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
Yui T 408d6f3ea3 Address code review 2014-12-10 19:30:09 -08:00
Cyrus Najmabadi ee828dc1da More incremental parser tests. 2014-12-10 19:15:44 -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
Mohamed Hegazy 774c061779 Merge branch 'release-1.4' into suppressNoImplicitAnyErrors
Conflicts:
	src/compiler/parser.ts
	src/harness/harness.ts
2014-12-10 18:45:28 -08:00
Yui T 31e49ed93e Move grammar checking: callSignature, constructorType, ConstructSignature, FunctionType, IndexSignature 2014-12-10 18:39:24 -08:00
Yui T 16693316e5 Add isEarly flag into error from grammar checking 2014-12-10 18:34:38 -08:00
Daniel Rosenwasser 0aca3b9667 Fixed 'use strict' check. 2014-12-10 18:17:59 -08:00
Cyrus Najmabadi 3699a4079f Rename method. 2014-12-10 17:52:42 -08:00
Mohamed Hegazy d2c7c01ff3 Respond to code review commments 2014-12-10 17:51:14 -08:00
Cyrus Najmabadi 28b7ed9318 Initial stubs for the incremental parser logic. 2014-12-10 17:47:51 -08:00
Mohamed Hegazy 9e58b8aeda respond to code review commments 2014-12-10 17:41:48 -08:00
Daniel Rosenwasser b6e8dd49e4 Responded to CR feedback. 2014-12-10 17:34:17 -08:00
Daniel Rosenwasser 905d978883 Moved createCompilerHost into parser.ts 2014-12-10 17:13:39 -08:00
Cyrus Najmabadi 7848726784 Sweep and mark nodes before going and performing incremental parsing. 2014-12-10 17:10:53 -08:00
Mohamed Hegazy 38bf383f03 Add tests for public declarations 2014-12-10 16:54:42 -08:00
Daniel Rosenwasser 2b4a769dc3 Merge remote-tracking branch 'origin/release-1.4' into exposeServices2 2014-12-10 16:43:21 -08:00
Daniel Rosenwasser 7c6d731b62 Moved non-exposed functions to utilities; fix up emitted .d.ts in Jakefile. 2014-12-10 16:42:41 -08:00
Cyrus Najmabadi f9f9b374d1 When updating the text for a source file, extrend the changed range.
This ensures that nodes/tokens affected by lookahead will be reparsed.
2014-12-10 16:33:14 -08:00
Daniel Rosenwasser 9ad6eb21ed Merge pull request #1341 from Microsoft/escapingTheTemplateOfDoom
Template string escaping fixes
2014-12-10 16:29:00 -08:00
Anders Hejlsberg d2f500292f Make initial inferences from parameterless function expressions (#1186) 2014-12-10 16:02:39 -08:00
Yui T 073994ec55 Addres code review 2014-12-10 15:44:36 -08:00
Vladimir Matveev c3bc360c53 add missing property to harnessLS 2014-12-10 15:36:46 -08:00
Vladimir Matveev 0a17fc687d addressed CR feedback: rename getApiVersion to getServicesVersion 2014-12-10 15:35:58 -08:00
Vladimir Matveev fbec3fe3c4 removed dummy parameter from getApiVersion method 2014-12-10 15:35:56 -08:00
Vladimir Matveev c077910679 added getApiVersion method to TypeScriptServicesFactory 2014-12-10 15:35:55 -08:00
Vladimir Matveev 10d08b816e do not indent leading comments that attached to tokens with errors 2014-12-10 15:08:26 -08:00
Daniel Rosenwasser e2baddd716 Explicit default target for fourslash tests in the harness. 2014-12-10 15:00:41 -08:00
Mohamed Hegazy f690f054fc Remove unused parameter to getCompletionsAtPosition
Conflicts:
	tests/baselines/reference/APISample_node_compile.js
	tests/baselines/reference/APISample_node_compile.types
	tests/baselines/reference/APISample_standalone_compile.js
	tests/baselines/reference/APISample_standalone_compile.types
2014-12-10 14:59:56 -08:00
Daniel Rosenwasser 520979d094 Make getLocalizedDiagnosticMessages and getCancellationToken optional 2014-12-10 14:58:08 -08:00
Vladimir Matveev 6520663de7 add missing property to harnessLS 2014-12-10 14:52:42 -08:00
Mohamed Hegazy 1fab80f3d9 move OutliningSpan definitions to services to ensure it is visible in definitions file 2014-12-10 14:50:29 -08:00
Daniel Rosenwasser 6da0b57d19 Removed tokenSpan.ts. 2014-12-10 14:49:59 -08:00
Anders Hejlsberg 35adeb8363 Addressing CR feedback 2014-12-10 14:44:31 -08:00
Mohamed Hegazy f90e725aa0 move formatting.ts and smartIndernter.ts into formatting folder to match thier namespace 2014-12-10 14:42:52 -08:00
Mohamed Hegazy cf340efe01 remove unused file 2014-12-10 14:42:28 -08:00
Mohamed Hegazy fc950ed930 Move Map to types to ensure it is visible in definition files 2014-12-10 14:41:57 -08:00
Mohamed Hegazy 523c1795b8 use ts.System for tests 2014-12-10 14:41:32 -08:00
Anders Hejlsberg 7ed933f5c4 Type guards do no affect values of type any 2014-12-10 14:41:29 -08:00
Mohamed Hegazy 0d9b2c8725 move text defintions to services.ts 2014-12-10 14:40:24 -08:00
Daniel Rosenwasser 4deea66c1c Put 'sys' into the 'ts' module. 2014-12-10 14:40:09 -08:00