Cyrus Najmabadi
6170c56af4
Remove 'isOpen' and 'version' from teh compiler's SourceFile type.
...
Also, provide a way for creators of a source file to specify if they
want parent nodes hooked up.
2014-12-09 16:08:01 -08:00
Anders Hejlsberg
7bc35b3ae0
Merge branch 'master' into destructuring
...
Conflicts:
src/compiler/binder.ts
src/compiler/checker.ts
src/compiler/emitter.ts
src/compiler/parser.ts
src/services/services.ts
tests/baselines/reference/parserCommaInTypeMemberList2.errors.txt
2014-12-09 11:26:43 -08:00
Cyrus Najmabadi
cc83925f32
Also split out .PropertyDeclaration and .PropertySignature from .Property.
2014-12-08 16:37:35 -08:00
Cyrus Najmabadi
c1b19d761d
Remove the 'Method' syntaxkind and introduce MethodSignature and MethodDeclaration instead.
...
Sharing a single kind here would be bad for incremental scenarios as these two node types
are not interchangeable.
For now, i have updated nearly all code to look for both kinds. However, it may not make sense
in all locations, and we could likely tighten up many code locations to only have to deal with
one or the other.
2014-12-08 16:16:11 -08:00
Anders Hejlsberg
459dee0e84
Merge branch 'master' into destructuring
...
Move downlevel vs. ES6 emit branching into individual emit functions
2014-12-08 14:42:38 -08:00
Anders Hejlsberg
05c9966180
Addressing CR feedback:
...
New SyntaxKind.BindingElement
Introduced new VariableLikeDeclaration and BindingElement types
Cleaned up VariableDeclaration, ParameterDeclaration, PropertyDeclaration types
Node kind of binding element is always SyntaxKind.BindingElement
Changed CheckVariableDeclaration to CheckVariableLikeDeclaration
Reorganized CheckVariableLikeDeclaration
2014-12-06 13:53:06 -08:00
CyrusNajmabadi
f99bc15783
Merge pull request #1369 from Microsoft/parserErrors2
...
Track if the parser encountered any errors as a bit in the next node that is produced.
2014-12-04 13:37:50 -08:00
Sheetal Nandi
e3320c2530
Merge pull request #1362 from Microsoft/contextSensitiveExpressions
...
Resolve the context sensitive expression containers before resolving node
2014-12-04 13:02:56 -08:00
Sheetal Nandi
c3c44dc3c8
Some renaming and added comments as per feedback
2014-12-04 12:55:54 -08:00
Cyrus Najmabadi
1976f0de2e
Track if the parser encountered any errors as a bit in the next node that is produced.
2014-12-04 10:19:57 -08:00
Anders Hejlsberg
816abb19e4
Merge branch 'master' into destructuring
...
Conflicts:
src/compiler/checker.ts
src/compiler/diagnosticInformationMap.generated.ts
src/compiler/diagnosticMessages.json
src/compiler/emitter.ts
src/compiler/parser.ts
src/compiler/types.ts
src/services/navigationBar.ts
tests/baselines/reference/assignmentLHSIsValue.errors.txt
tests/baselines/reference/objectTypesWithOptionalProperties.errors.txt
tests/baselines/reference/parserErrorRecovery_ParameterList2.errors.txt
2014-12-03 16:43:01 -08:00
Cyrus Najmabadi
158cf62206
More CR feedback.
2014-12-03 15:36:39 -08:00
Cyrus Najmabadi
22d7aed980
CR feedback.
2014-12-03 15:27:14 -08:00
Sheetal Nandi
1939c7f2cd
Fix the getSymbolInfo and getTypeOfNode entry points to resolve the context sensitive information before resolving the actual node
2014-12-03 14:47:13 -08:00
Sheetal Nandi
c40e0f6738
Fixes the quickInfo when hovering over var inside the context sensitive expression
...
Handles #1165
2014-12-03 14:00:58 -08:00
Cyrus Najmabadi
0900005438
Don't rewrite function property assignments in the AST.
2014-12-03 01:46:04 -08:00
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
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
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
c53f3f5868
Merge branch 'master' into refactorEmitter
2014-12-02 15:31:35 -08:00
Vladimir Matveev
76e8560b0e
fix crash in signature help
2014-12-02 15:04:44 -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
Mohamed Hegazy
cf1f6406bb
Merge pull request #1332 from Microsoft/getEmitOutputCleanup
...
Ensure getEmitOutput only check the file requested
2014-12-02 13:21:13 -08:00
Cyrus Najmabadi
03a2d0197b
Make 'CatchClause' have-a block, instead of be-a block.
2014-12-01 23:21:27 -08:00
Mohamed Hegazy
08165c0b17
Ensure getEmitOutput only check the file requested
2014-12-01 23:15:13 -08:00
Cyrus Najmabadi
44627f859f
Simplify parsing code.
2014-12-01 22:50: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
Mohamed Hegazy
4e79458e69
Merge branch 'master' into es6typings
...
Conflicts:
tests/baselines/reference/constDeclarationShadowedByVarDeclaration3.types
2014-12-01 16:51:10 -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
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
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
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
0b8b90cdbc
Code review feedback.
...
Explain how TypeLiterals and ObjectLiterals are declarations.
Rename variable to be clearer.
2014-11-30 22:41:20 -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
3c028f03e1
Tighten types in the expression AST.
2014-11-30 19:51:42 -08:00
Cyrus Najmabadi
092475166c
Remove unnecessary tokens from the AST.
2014-11-30 15:54:39 -08:00
Cyrus Najmabadi
16e28156e5
Support arbitrary numbers of implements and extends clauses (with arbitrary numbers of types) for classes and interfaces.
...
This vastly improves our error tolerance and messages for when the user writes an illegal heritage clause sequence.
2014-11-30 15:38:45 -08:00
Cyrus Najmabadi
5f15355372
Use brands for Class Elements.
2014-11-30 14:28:32 -08:00
Cyrus Najmabadi
0cdc824079
Provide brands for Declarations.
2014-11-30 14:21:34 -08:00
Cyrus Najmabadi
54bd524c90
Provide brands for statements.
...
Introduce a ModuleElement type to provide more clear typesafety.
2014-11-30 14:06:15 -08:00
Cyrus Najmabadi
5f00c7cdbc
Change the names for property access and qualified names to match their types.
2014-11-29 17:25:52 -08:00