Anders Hejlsberg
c10a5520e2
Eagerly evaluate S extends T when S is definitely or definitely not assignable to T
2018-01-14 14:38:48 -08:00
Anders Hejlsberg
bb23bb2a92
Propagate both TypeFlags and ObjectFlags in getSpreadType
2018-01-03 11:29:21 -08:00
Anders Hejlsberg
abc8110e9b
Merge branch 'master' into conditionalTypes
...
# Conflicts:
# src/compiler/checker.ts
2018-01-03 10:56:45 -08:00
Nathan Shively-Sanders
5539e11b76
Merge pull request #20609 from Microsoft/getRootSymbols
...
Ensure getRootSymbols always works recursively
2018-01-03 09:44:27 -08:00
Wesley Wigham
29378b2ce2
Call back into getTypeOfFuncClassEnumModule in getTypeOfVariableOrParameterOrProperty if valueDeclaration is irregular kind ( #20939 )
2018-01-02 17:19:42 -08:00
Daniel Rosenwasser
0477f91dba
Merge pull request #20928 from Microsoft/initializerWithPropertyAccessUseBeforeDeclaration
...
Check whether we have a class before testing whether we have a super-class
2017-12-29 14:47:13 -08:00
Daniel Rosenwasser
ea94a3430d
Check whether we have a class before testing whether we have a super-class.
2017-12-29 12:30:27 -08:00
Wesley Wigham
ae211983eb
Add method signature handler to getTypeOfVariableOrParameterOrProperty ( #20825 )
2017-12-28 19:00:54 -08:00
Anders Hejlsberg
ff4f03c51d
Merge pull request #20882 from Microsoft/fixNarrowTypeBySwitch
...
Fix narrowing of type variable in switch statement
2017-12-28 09:22:26 -08:00
Anders Hejlsberg
5d3ecaebad
Fix narrowTypeBySwitchOnDiscriminant function
2017-12-23 19:12:49 -08:00
Nathan Shively-Sanders
2df7a89e61
Merge branch 'master' into limit-recursive-structured-type-resolution
2017-12-22 14:41:58 -08:00
Nathan Shively-Sanders
fb3042c3f7
Move recursion limiter to individual resolve* functions
2017-12-22 14:39:25 -08:00
Wesley Wigham
cedcba9285
Reset partial memberlist on defered circularity to calculate the correct members ( #20179 )
...
* Reset partial memberlist on defered circularity to calculate the correct members
* Remove return type
2017-12-22 11:41:39 -08:00
Wesley Wigham
7ad0d7b9fd
Fix higher order inference on indexed access types ( #20165 )
2017-12-21 14:47:03 -08:00
Wesley Wigham
00450f029c
Not all extended types have symbols ( #20827 )
2017-12-21 13:07:29 -08:00
Anders Hejlsberg
c78a6a5cad
Fix 'this' parameter handling in getUnionSignatures
2017-12-19 19:48:30 -08:00
Daniel Rosenwasser
69e091b40d
Merge pull request #19797 from charlespierce/implements_class_error_message
...
Add new error message when class implements class
2017-12-19 11:39:05 -08:00
Wesley Wigham
6c15fc6634
Fix devtools test ( #20731 )
...
* Fix devtools test
* Add small test case mimicing the issue from the user test
2017-12-18 14:47:45 -08:00
Andy
1562a278f8
Don't add completion for method if the this parameter doesn't match ( #20616 )
2017-12-18 11:28:04 -08:00
Anders Hejlsberg
14590f1884
Move JsxAttributes and MarkerType from TypeFlags to ObjectFlags
2017-12-17 20:27:04 -08:00
Anders Hejlsberg
27b945b898
Handle constraints for distributive conditional types
2017-12-16 09:51:18 -08:00
Andrew Casey
5e2dec7727
Merge pull request #20729 from amcasey/GH19839
...
Refine Extract Local
2017-12-15 16:51:25 -08:00
Wesley Wigham
ae73a9141d
Allow JSXAttributes types to be shortcut-spread into the spread type like normal objects ( #19047 )
...
* Bring jsx type resolution inline with normal objects, move jsx attribute property ignorign into relationship check
* Improved errors and reordered members
* Always use inferrential mode for jsx pass
* Add some missing skipLibChecks
* New check mode instead of odd type mapper
* Do not enable object literal freshness checks on jsx spreads
* Fix minor style nits
* Update order of type for test
* Accept corrected baseline
2017-12-15 16:13:28 -08:00
Wesley Wigham
dd933f4413
Fix get symbol at location to behave correctly for parameter assignments and jsx attributes ( #20706 )
...
* Fix get symbol at location to behave correctly got parameter assignments and jsx attributes
* Handle all those edge cases that weren;t explicitly handled
* Fix part of bug WRT getTypeAtLocation and for loops
* Baseline corrections pursuant to #20710
* Restore jsdoc tag interpretation
* Clean up some code, revert fourslash tests
* Cleanup types used by PR feedback
2017-12-15 15:50:22 -08:00
Andrew Casey
9efab94dfd
Annotate fewer extracted constants with types
...
Expose `isContextSensitive` from the checker and omit type annotations
for expressions for which it returns false.
2017-12-15 15:11:17 -08:00
Wesley Wigham
d89d68f426
make jsx attributes mutable locations ( #20710 )
2017-12-15 10:02:56 -08:00
Anders Hejlsberg
000f121d34
Improve conditional type constraint checking
2017-12-13 15:07:16 -08:00
Wesley Wigham
e1278f091c
Get resolved module exports in symbol chain and not raw exports ( #20661 )
...
* Actually get module exports and not module exports sans export stars
* style update
* Trim test a bit
2017-12-13 14:01:23 -08:00
Anders Hejlsberg
ddc631c5d4
Fix typo
2017-12-13 13:41:17 -08:00
Ryan Cavanaugh
f6603cd9f2
Merge pull request #20545 from RyanCavanaugh/codefixOmnibus
...
Omnibus fixes for telemetry-sourced crashes
2017-12-13 12:49:58 -08:00
Andy Hanson
ceb0502914
Code review
2017-12-13 12:28:13 -08:00
Andy Hanson
9533c0093d
Merge branch 'master' into getRootSymbols
2017-12-13 12:26:57 -08:00
Anders Hejlsberg
20434fabe6
Inference for conditional and extends type operators
2017-12-13 09:48:51 -08:00
Anders Hejlsberg
9f74a7a228
Rename TypeVariable to InstantiableType
2017-12-13 09:24:14 -08:00
Anders Hejlsberg
61225cc57c
Introduce TypeFlags.Instatiable
2017-12-13 09:14:57 -08:00
Wesley Wigham
40029a0523
Use TypeFlags.UnionOrIntersection not TypeFlags.Union ( #20662 )
2017-12-12 16:32:55 -08:00
Anders Hejlsberg
43e195d966
Clean up isGenericXXXType functions
2017-12-12 10:44:43 -08:00
Anders Hejlsberg
ec2bdfdb8b
Add 'T extends U' type operator
2017-12-12 09:52:14 -08:00
Nathan Shively-Sanders
43a5a271ee
object spreads to {}
...
Specifically, when spreading `object` on the right, spread now returns the
left of the spread; previously it returned `object`, which loses
everything to the left.
2017-12-12 08:34:36 -08:00
Andy
d53af092c7
Always check a return expression in a generator ( #20621 )
2017-12-12 07:50:11 -08:00
Charles Pierce
c489dd96f6
Resolve merge conflicts in codeFix
2017-12-11 22:27:56 -08:00
Wesley Wigham
eba15b5990
Preserve literal types in contextual unions ( #19966 )
...
* Cherrypick non-comparability related changes from prolific literals PR
* Renames and other style changes
* Accept changes to new tests
* Exclude the domain root from contextual typing literals except for type variables
* Readd simple preservation fix
* Add huge map test
* Revert changes to widening on destructuring initalizers
* Use tristate for subtype-reduction type
* Rename type and argument
* Move longer-running test to user suite
2017-12-11 18:03:38 -05:00
Wesley Wigham
d01f4d140a
Reimplement #20320 differently to handle multiple check orders better ( #20588 )
...
* Reimplement #20320 less elegantly but handle odd check orders better
* Consolidate 2 of 3 conditions
2017-12-11 13:32:16 -05:00
andy-ms
b554a3691d
Ensure getRootSymbols always works recursively
2017-12-10 17:07:38 -08:00
Anders Hejlsberg
063eed1a47
Add type relationships and distribute over union types
2017-12-08 10:19:23 -08:00
Ryan Cavanaugh
5c99c67b4b
Fixes #20542
2017-12-07 12:39:17 -08:00
Nathan Shively-Sanders
d75ebd6a33
Narrowing of in handles string index signatures
2017-12-07 10:57:15 -08:00
Ryan Cavanaugh
c2fc5eafb5
Merge pull request #15256 from IdeaHunter/in-typeguard
...
Add type guard for `in` keyword
2017-12-06 10:32:07 -08:00
Andy
8dca431733
Use InternalSymbolName.Default more ( #20480 )
2017-12-06 07:02:27 -08:00
Charles Pierce
472f087e69
Add new error message when class implements class #19793
2017-12-05 21:18:31 -08:00