Nathan Shively-Sanders
0cadfcf6df
Clean up js decl code in checker+utilities
2018-02-14 15:48:20 -08:00
Nathan Shively-Sanders
bad155f072
Clean up bindPropertyAssignment
...
The add-intermediate-container-symbols loop is still quite confusing,
but it's not as bad as before.
2018-02-13 16:50:53 -08:00
Nathan Shively-Sanders
76a9ac4434
Restrict declaration initializers too
2018-02-13 15:52:35 -08:00
Nathan Shively-Sanders
88c67fa777
Refactor binder and update baselines.
...
Also improve assert message in fourslash.
2018-02-13 15:44:15 -08:00
Nathan Shively-Sanders
fc08e20da8
Correctly merge JS decls
...
Turns out merging was incorrect even for non-nested declarations, but
tests didn't catch it before.
2018-02-13 14:17:46 -08:00
Nathan Shively-Sanders
15554d7ea5
Fix bogus jsdoc error
2018-02-09 16:20:11 -08:00
Nathan Shively-Sanders
61ea026b3c
Allow window. prefix in default-assignment JS decl
2018-02-09 14:53:34 -08:00
Nathan Shively-Sanders
8ac94f5dec
Support function/class in JS nested decls
...
This required fixing the predicates and the avoiding of contextual
typing loops. This is now done right, in
getContextualTypeOfBinaryExpression.
The predicates still need work.
2018-02-09 10:41:30 -08:00
Nathan Shively-Sanders
a09c2391a4
4-nested object-literal assignment works in JS
2018-02-08 16:07:22 -08:00
Nathan Shively-Sanders
b0aebb4c1e
Recursive object-literal-assignment declarations
2018-02-08 15:43:10 -08:00
Nathan Shively-Sanders
d0b08a24ec
Refactor JS static property assignment binding
...
Less polymorphism, up-to-date generalised names and documentation.
2018-02-08 11:08:41 -08:00
Nathan Shively-Sanders
4998b99fef
getSpecialPropertyAssignmentKind uses type guards
2018-02-07 16:19:49 -08:00
Nathan Shively-Sanders
e0596ad9b8
Improve contextual type skip in checkObjectLiteral
...
It is still super hacky
2018-02-07 15:53:43 -08:00
Nathan Shively-Sanders
2f8c237270
Support o.x = o.x || {} assignments in JS
...
Plus add tests for them
2018-02-07 14:54:34 -08:00
Nathan Shively-Sanders
9e8d59ca14
Support var x = x || {} declarations in JS
2018-02-07 11:26:30 -08:00
Nathan Shively-Sanders
4f07f58c03
Merge branch 'master' into js-object-literal-assignments-as-declarations
2018-02-07 09:17:48 -08:00
Anders Hejlsberg
bb28444f8c
Handle all instantiable non-primitive types in homomorphic mapped types
2018-02-06 12:27:35 -08:00
Ron Buckton
3b73ce49d7
Merge pull request #21585 from Microsoft/fix21584
...
Fix initializer assignability for unique symbol
2018-02-06 11:30:12 -08:00
Wesley Wigham
17554ff285
Fix JSX contextual types to not eagerly become apparent, use 2-pass inference for JSX ( #21383 )
...
* Fix JSX contextual types to not eagerly become apparent
* Apply changes from code review, unify common code
* Fix jsx children contextual typing
* Light code review feedback
* Use fillMissingTypeArguments
* Accept nonliteral jsx child type
* Add test for the fillMissingTypeArguments case
2018-02-05 16:33:39 -08:00
Anders Hejlsberg
3b220a8b0f
Merge pull request #21649 from Microsoft/conditionalTypesASI
...
Conditional types ASI
2018-02-05 16:21:34 -08:00
Mohamed Hegazy
8f8fec433e
Rename switch --emitDeclarationsOnly to --emitDeclarationOnly ( #21651 )
...
* Rename `--emitDeclarationsOnly` to `--renameDeclarationOnly`
* Rename test files
2018-02-05 14:48:50 -08:00
Andy
c7b86e824f
EntityNameExpression doesn't need to include ParenthesizedExpression ( #21588 )
2018-02-05 14:22:03 -08:00
Anders Hejlsberg
0d3f2166e3
Automatic semicolon insertion before 'extends' in conditional type
2018-02-05 13:56:10 -08:00
Andy
d584f4d97b
Fix assertion: class reference location may be 'default' keyword instead of class name ( #21630 )
...
* Fix assertion: class reference location may be 'default' keyword instead of class name
* Update API baselines
2018-02-05 13:24:08 -08:00
Klaus Meinhardt
c1a2adcea4
Fix return types of NodeBuilder methods ( #21619 )
2018-02-05 11:34:28 -08:00
Anders Hejlsberg
e31b3e942b
Merge pull request #21627 from Microsoft/fixExtendsNever
...
Fix 'T extends never' in conditional types
2018-02-05 11:21:06 -08:00
Anders Hejlsberg
d629607f98
Merge pull request #21610 from Microsoft/fixSharedTypeParameters
...
Fix unintended sharing of type parameters
2018-02-05 11:20:34 -08:00
Andy
14bd0a2d56
Detect and prevent creation of bad Identifier ( #21581 )
2018-02-05 09:13:38 -08:00
Anders Hejlsberg
b8f3c6169b
Use more permissive wildcard type in definitely false check
2018-02-05 06:48:29 -08:00
Anders Hejlsberg
503fc0642e
Fix unintended sharing of typeParameters property in SymbolLinks
2018-02-03 14:45:01 -08:00
Anders Hejlsberg
4ae8445ff7
Properly classify output text in emitter
2018-02-03 11:32:24 -08:00
Anders Hejlsberg
7bb8cfe638
Resolve to type in true branch for 'never extends never'
2018-02-03 09:44:28 -08:00
Anders Hejlsberg
7034d671db
Merge branch 'conditionalTypes' into inferTypes
2018-02-03 08:41:54 -08:00
Anders Hejlsberg
d4dc67aab2
Merge branch 'master' into conditionalTypes
...
# Conflicts:
# src/compiler/checker.ts
2018-02-03 07:26:38 -08:00
Wesley Wigham
89de4c9a3a
Only apply global augmentations before globals are available ( #21563 )
...
* Only apply global augmentations before globals are available
* Add detailed comment explaining the split of global/nonglobal augmentations
* Remove trailing whitespace
2018-02-02 18:44:54 -08:00
Wesley Wigham
2c3b69336f
Collect import helper needs during module info gathering ( #21567 )
...
* Collect import helper needs during module info gathering
* Add tests for other forms that trigger import helpers
2018-02-02 13:17:39 -08:00
Ron Buckton
6f792f5aec
Fix initializer assignability for unique symbol
2018-02-02 13:13:21 -08:00
Andy
567fba251b
Support exclamationToken in updateProperty and createProperty ( #21577 )
2018-02-02 13:03:18 -08:00
Anders Hejlsberg
79d2772531
Merge pull request #21573 from Microsoft/optimizeUnionIntersection
...
Optimize union and intersection types
2018-02-02 12:41:04 -08:00
Andy
78f217bdd6
Assert exportingModuleSymbol is defined ( #21340 )
...
* Assert `exportingModuleSymbol` is defined
* Add assert message
* Add message in both places
2018-02-02 10:49:34 -08:00
Wesley Wigham
b3ec8cce00
Leverage existing function for choosing spread validity ( #21564 )
2018-02-02 10:11:50 -08:00
Anders Hejlsberg
06c28ea69b
Initialize more common properties in Symbol constructor
2018-02-02 07:48:21 -08:00
Anders Hejlsberg
2047558daf
Optimize creation of union and intersection types
2018-02-02 07:47:42 -08:00
Wesley Wigham
8b81d19b6d
Enable CFA on this keyword unconditionally ( #21490 )
2018-02-02 00:30:03 -08:00
Ron Buckton
06c5d393b5
Merge pull request #21559 from Microsoft/fix21543
...
Fix over-aggressive transformation of super properties
2018-02-01 15:45:24 -08:00
Wesley Wigham
aa5272dc89
Create import helpers for named imports if they contain default imports ( #21550 )
2018-02-01 15:38:18 -08:00
Ron Buckton
94b2d40cac
Fix over-aggressive transformation of super properties
2018-02-01 15:22:34 -08:00
Wesley Wigham
a33dae3771
Rework how default vs local name selection is done to be more correct ( #21526 )
2018-02-01 12:34:25 -08:00
Wesley Wigham
058b2f7f11
Allow boolean literals to be generated from contextual types again ( #21503 )
...
* Allow boolean literals to be generated from contextual types again
* Update fourslash test
2018-02-01 12:34:16 -08:00
Sheetal Nandi
24476966e2
Merge pull request #21545 from Microsoft/logMoreSysInfo
...
Log more info about compilation
2018-02-01 11:41:34 -08:00