Commit Graph

462 Commits

Author SHA1 Message Date
Cyrus Najmabadi
ed81cad39a Remove the 'FunctionBlock' ast kind.
We don't want different AST forms for identical syntactic constructs ('Block' and 'FunctionBock').
This prevents reuse in incremental scenarios and forces the incremental parser to know when to
change between the two.
2014-12-02 22:52:21 -08:00
Cyrus Najmabadi
ff328b0d54 Merge property assignment parsing code. 2014-12-02 22:12:50 -08:00
Cyrus Najmabadi
a8badd921e Update the name of 'PropertyAssignment' to 'LonghandPropertyAssignment'.
'PropertyAssignment' is now the name of the super interface brand we use for all thigns that can
be members of an object literal.
2014-12-02 22:01:52 -08:00
Cyrus Najmabadi
f520129e2c Simplify arrow function expression parsing.
Reduce allocations by avoiding the need for a superfluous 'ParsedSignature'.
2014-12-02 19:04:51 -08:00
Cyrus Najmabadi
5a7500ca5e Add a dedicated 'EndOfFile' token to a SourceFile.
This is important for incremental parsing, as it is where we can attach parse errors at the end of
the file to.  Also, it helps with things like emitting comments at the end of the file.
2014-12-02 16:09:41 -08:00
CyrusNajmabadi
6e945afdf5 Merge pull request #1343 from Microsoft/parserWork
Extract reference comments out into their own diagnostics array.
2014-12-02 16:05:07 -08:00
Yui T
1f6192578e Merge branch 'master' into refactorEmitter
Conflicts:
	src/compiler/emitter.ts
	src/compiler/parser.ts
	src/compiler/types.ts
2014-12-02 14:55:30 -08:00
Cyrus Najmabadi
90bf48f2d4 Extract reference comments out into their own diagnostics array.
Only actual parse errors are stored in parseDiagnostics.  Reference errors are stored in a separate
array now.
2014-12-02 14:49:34 -08:00
Cyrus Najmabadi
a6fe980d19 Add explanatory comment.
Reduce function allocations in the parser.
2014-12-02 13:54:44 -08:00
Cyrus Najmabadi
deca94427c Reduce arrow function allocations in the parser. 2014-12-02 00:02:15 -08:00
Cyrus Najmabadi
581ef9f2b0 Remove arrow allocations from the parser in a few places. 2014-12-01 23:39:44 -08:00
Cyrus Najmabadi
03a2d0197b Make 'CatchClause' have-a block, instead of be-a block. 2014-12-01 23:21:27 -08:00
Cyrus Najmabadi
44627f859f Simplify parsing code. 2014-12-01 22:50:03 -08:00
Cyrus Najmabadi
b5c3cd8d4a Simplify code. 2014-12-01 22:39:10 -08:00
Cyrus Najmabadi
af62715e8d Use helper function.
Rename some functions to be clearer.
2014-12-01 22:30:22 -08:00
Cyrus Najmabadi
2459632a62 Simplifying the signature parsing code. 2014-12-01 22:20:03 -08:00
Cyrus Najmabadi
db89584a86 Put semantically relevant tokens in the tree. 2014-12-01 22:03:41 -08:00
Cyrus Najmabadi
8ad4a0a5b8 Traverse into all nodes when walking the tree. 2014-12-01 20:45:29 -08:00
Cyrus Najmabadi
f8a4fb0a15 Put semantically relevant tokens in the tree. 2014-12-01 19:19:50 -08:00
Cyrus Najmabadi
a29862eea5 Provide greater type safety in the ast system. 2014-12-01 18:49:57 -08:00
Cyrus Najmabadi
f8f314868b Merge branch 'master' into lessDirectCallsToError
Conflicts:
	src/compiler/checker.ts
	src/compiler/diagnosticInformationMap.generated.ts
	src/compiler/diagnosticMessages.json
2014-12-01 17:42:59 -08:00
Cyrus Najmabadi
df4f9044d9 Make sure we have an appropriate error for heritage clause lists. 2014-12-01 17:07:13 -08:00
Mohamed Hegazy
4e79458e69 Merge branch 'master' into es6typings
Conflicts:
	tests/baselines/reference/constDeclarationShadowedByVarDeclaration3.types
2014-12-01 16:51:10 -08:00
Cyrus Najmabadi
ae3b030223 Don't set kinds after the fact. 2014-12-01 16:39:22 -08:00
Cyrus Najmabadi
9b54a0b54f Don't use the parsing error path for reporting ///reference errors. 2014-12-01 16:34:03 -08:00
Cyrus Najmabadi
1633e4abdd Remove unnecessary diagnostic flag. 2014-12-01 16:26:34 -08:00
Cyrus Najmabadi
d730e5ca55 Remove 'missing' syntax kind. 2014-12-01 16:17:04 -08:00
Cyrus Najmabadi
af7b8d624f Don't explicitly create a missing node when parsing arrow expressions. 2014-12-01 14:44:58 -08:00
Cyrus Najmabadi
284e136f2a Remove unused function. 2014-12-01 14:23:08 -08:00
Cyrus Najmabadi
eee6491521 Don't create a missing node for "foo[]".
We want to remove 'missing' nodes, and we also want to improve increment reuse (which missing nodes
interfere with).
2014-12-01 14:14:39 -08:00
Cyrus Najmabadi
3a6dba5878 Replace unnecessary case in switch with assert. 2014-12-01 13:46:44 -08:00
Cyrus Najmabadi
1a39d09939 Treat 'const' as a modifier if followed by 'enum'. 2014-12-01 13:42:27 -08:00
Cyrus Najmabadi
cc1da37e72 Use a single member to represent a module reference. 2014-12-01 13:24:33 -08:00
Mohamed Hegazy
199b71c2ce Merge branch 'master' into es6Typings 2014-12-01 13:22:20 -08:00
Daniel Rosenwasser
9da7287eaa Merge pull request #1275 from Microsoft/unterminator
Keep track of unterminated literal expressions.
2014-12-01 12:57:33 -08:00
Cyrus Najmabadi
64b1f232b5 Simplify the code for parseDeclaration.
This is to help get to a point where we can remove the direct call to 'error' within it.
2014-12-01 03:24:12 -08:00
Cyrus Najmabadi
1600b38760 Don't explicitly call 'error' when parsing a type. 2014-12-01 03:15:51 -08:00
Cyrus Najmabadi
ada6cebef3 Don't parse nodes, only to not include them in the tree. This will break incremental parsing scenarios.
Properly store the data for an external module reference in the AST.
2014-12-01 03:00:27 -08:00
Cyrus Najmabadi
4db6d3136c Extract out common code from the list parsers. 2014-12-01 01:10:21 -08:00
Cyrus Najmabadi
08d3e4a90e Don't directly create errors when parsing expressions. 2014-12-01 00:57:48 -08:00
Cyrus Najmabadi
94febee138 Don't create errors directly when parsing template spans. 2014-12-01 00:52:52 -08:00
Cyrus Najmabadi
2f634b7e54 Don't report errors directly when parsing throw statements or try/finally statements. 2014-12-01 00:45:18 -08:00
Cyrus Najmabadi
f91996a80c Don't report an error directly when parsing a function body. 2014-12-01 00:31:31 -08:00
Cyrus Najmabadi
7eb4e742d1 Don't directly produce errors while parsing 'try' statements. 2014-12-01 00:16:55 -08:00
Cyrus Najmabadi
f404212793 Make fewer direct calls to 'error' and 'errorAtPos' in the parser. 2014-12-01 00:01:41 -08:00
Cyrus Najmabadi
ebe8711a21 Better error recover when there is an unterminated expression before a declaration. 2014-11-30 22:28:17 -08:00
Cyrus Najmabadi
db2bf0a309 Address issue where we were having to double cast between FunctionLikeDeclaration and Expression types.
Provide brands in a few more places.  Anywhere where we have a type that extends another, but only adds
optional properties, we should consider brands.

Stop SignatureDeclarations from being ClassElements.  Instead, only IndexSignatureDeclaration is
considered to be a ClassElement.
2014-11-30 21:46:39 -08:00
Cyrus Najmabadi
e80d772579 Change function names. 2014-11-30 21:14:11 -08:00
Cyrus Najmabadi
97460a1977 Simplify code. 2014-11-30 21:07:47 -08:00
Cyrus Najmabadi
092475166c Remove unnecessary tokens from the AST. 2014-11-30 15:54:39 -08:00