Commit Graph
100 Commits
Author SHA1 Message Date
Anders Hejlsberg 7247d8e33a T extends unknown ? X : Y should eagerly resolve to X 2018-05-25 10:03:42 -07:00
Anders Hejlsberg ac6fa9ccee Fix fourslash test 2018-05-25 09:49:20 -07:00
Anders Hejlsberg 8666d39c59 Accept new baselines 2018-05-25 09:46:20 -07:00
Anders Hejlsberg 3f5f8d7bd6 Fix issue 2018-05-25 09:45:53 -07:00
Anders Hejlsberg 77bb4f89c0 Accept new baselines 2018-05-25 09:10:17 -07:00
Anders Hejlsberg 0d9dc89a78 Proper handling of top type in intersection types 2018-05-25 09:03:30 -07:00
Anders Hejlsberg 4c417833a9 Use ObjectFlags.EmptyObjectType in addTypeToIntersection 2018-05-24 13:13:01 -07:00
Anders Hejlsberg 2a19a4d81d Use ObjectFlags.EmptyObjectType to check for empty object types 2018-05-24 13:00:40 -07:00
Anders Hejlsberg 1148cb0039 Accept baseline API changes 2018-05-24 12:59:45 -07:00
Anders Hejlsberg 9e362b949e Accept new baselines 2018-05-24 12:49:20 -07:00
Anders Hejlsberg bac117d64d Empty object type in a union type absorbs all but null and undefined 2018-05-24 12:36:44 -07:00
Anders Hejlsberg a5029e3d4e Merge pull request #23794 from Microsoft/fixDiscriminatedContextualType
Fix discriminant checking in contextual types
2018-05-22 10:35:29 -07:00
Anders Hejlsberg f52c4af448 Merge pull request #24310 from Microsoft/nonWideningLiteralInferences
Non-widening literal type inferences
2018-05-22 06:56:34 -07:00
Anders Hejlsberg b31c414a31 Accept new baselines 2018-05-21 16:44:03 -07:00
Anders Hejlsberg 9d4096f9c4 Add tests 2018-05-21 16:43:55 -07:00
Anders Hejlsberg 5bbadb66ab Accept new baselines 2018-05-21 16:43:46 -07:00
Anders Hejlsberg 8528dbee76 Handle union types in getRegularTypeOfLiteralType 2018-05-21 16:17:56 -07:00
Anders Hejlsberg c8ac085498 Infer non-widening literal types when type parameter constraint includes primitive types 2018-05-21 15:28:51 -07:00
Anders Hejlsberg 3fc3df3c3a Merge pull request #24137 from Microsoft/fix23977
Optimize intersections of unions of unit types
2018-05-17 13:15:28 -07:00
Anders Hejlsberg 027829fbcd Properly handle edge cases 2018-05-16 16:26:37 -07:00
Anders Hejlsberg 8b6e85347d Accept new baselines 2018-05-15 12:34:41 -07:00
Anders Hejlsberg 1c3dbd4f4b Add regression test 2018-05-15 12:34:29 -07:00
Anders Hejlsberg 426a63e8b6 Optimize intersections of unions of unit types 2018-05-15 12:24:40 -07:00
Anders Hejlsberg 40e0ab72d2 Merge pull request #23966 from Microsoft/fixIndexedAccessAnyConstraint
Fix indexed access with 'any' constraint
2018-05-08 12:21:00 -07:00
Anders Hejlsberg 14e3e39237 Accept new baselines 2018-05-08 09:42:26 -07:00
Anders Hejlsberg 238177657f Add regression test 2018-05-08 09:42:21 -07:00
Anders Hejlsberg ce6fd5eeaa Exception for 'any' constraint only applies to type parameters 2018-05-08 09:42:03 -07:00
Anders Hejlsberg 3bfbe68b5a Merge pull request #23806 from Microsoft/objectAndUnconstrainedTypeParameter
Unconstrained type variable not assignable to 'object'
2018-05-01 13:24:16 -07:00
Anders Hejlsberg 0066b02772 Accept new baselines 2018-05-01 13:06:19 -07:00
Anders Hejlsberg 4c933aef9a Check that test cases produce expected types 2018-05-01 13:05:49 -07:00
Anders Hejlsberg ce2dea98ca Accept new baselines 2018-05-01 12:44:55 -07:00
Anders Hejlsberg 59355cbfdb Add regression tests 2018-05-01 12:44:46 -07:00
Anders Hejlsberg 1de8c65678 Unconstrained type parameter not assignable to 'object' 2018-05-01 12:38:29 -07:00
Anders Hejlsberg acee628a31 Fix discriminant checking in contextual types to avoid infinite recursion 2018-04-30 15:42:52 -07:00
Anders Hejlsberg 83bc70dd63 Merge pull request #23782 from Microsoft/controlFlowNullTypeAndLiteral
Control flow for null type vs. literal
2018-04-30 11:38:00 -07:00
Anders Hejlsberg a286cffb5b Accept new baselines 2018-04-30 10:44:53 -07:00
Anders Hejlsberg 0dc42fea74 Add regression tests 2018-04-30 10:43:55 -07:00
Anders Hejlsberg 672d2144fa Check for null type instead of null keyword 2018-04-30 10:43:43 -07:00
Anders Hejlsberg 33d20e9321 Merge pull request #23768 from Microsoft/fixIndexedAccessAssignability
Fix assignability of unconstrained T[K]
2018-04-29 09:29:02 -07:00
Anders Hejlsberg f46040bdab Accept new baselines 2018-04-29 07:55:28 -07:00
Anders Hejlsberg 936444ad7b Add tests 2018-04-29 07:55:23 -07:00
Anders Hejlsberg fc2f16ca3c Treat unconstrained T[K] the same as unconstrained T 2018-04-29 07:46:57 -07:00
Anders Hejlsberg 25d5952096 Merge pull request #23751 from Microsoft/reduceIntersectionTypes
Remove redundant primitive types from intersections
2018-04-28 11:42:56 -07:00
Anders Hejlsberg 5a7eb1cbc8 Fix typo 2018-04-28 08:24:41 -07:00
Anders Hejlsberg e80b47da9e Accept new baselines 2018-04-27 16:50:17 -07:00
Anders Hejlsberg 38d1f7f0d2 Add tests 2018-04-27 16:50:09 -07:00
Anders Hejlsberg cfe7284876 Merge branch 'master' into reduceIntersectionTypes 2018-04-27 15:54:17 -07:00
Anders Hejlsberg 6c28da328e Merge pull request #23672 from Microsoft/intersectionWithUnionConstraint
Type relationships for intersections with union constraints
2018-04-27 15:53:00 -07:00
Anders Hejlsberg 5ecd03e8c0 Merge pull request #23660 from Microsoft/fixIndexTypeTargetConstraint
Fix constraint of 'keyof T[K]' in target position
2018-04-27 15:52:21 -07:00
Anders Hejlsberg d25a6ec9ad Remove redundant primitive types from intersections with literal types 2018-04-27 10:40:16 -07:00
Anders Hejlsberg bbcb1bb25a Accept new baselines 2018-04-25 11:03:39 -07:00
Anders Hejlsberg 8442a45bb6 Add additional tests 2018-04-25 11:03:25 -07:00
Anders Hejlsberg 8a7c2031fd Accept new baselines 2018-04-25 10:58:20 -07:00
Anders Hejlsberg 3707f7dfbe Handle more situations involving combined constraints of intersections 2018-04-25 10:58:08 -07:00
Anders Hejlsberg b78054d9c3 Accept new baselines 2018-04-24 15:57:26 -07:00
Anders Hejlsberg 50c7ff79d0 Add tests 2018-04-24 15:57:17 -07:00
Anders Hejlsberg e091e350bb Accept new baselines 2018-04-24 15:56:46 -07:00
Anders Hejlsberg d90d6b9277 Remove more intersections with empty value domains from union types 2018-04-24 15:55:15 -07:00
Anders Hejlsberg ef8d5094b4 Properly check relationships for intersections with union constraints 2018-04-24 14:57:27 -07:00
Anders Hejlsberg ad4f83a281 Merge branch 'master' into fixIndexTypeTargetConstraint
# Conflicts:
#	tests/baselines/reference/keyofAndIndexedAccess.js
#	tests/baselines/reference/keyofAndIndexedAccess.symbols
#	tests/baselines/reference/keyofAndIndexedAccess.types
#	tests/cases/conformance/types/keyof/keyofAndIndexedAccess.ts
2018-04-24 11:08:08 -07:00
Anders Hejlsberg 5d67f8ef68 Merge pull request #23645 from Microsoft/distributeKeyofUnion2
Distribute 'keyof' union types (take 2)
2018-04-24 10:09:45 -07:00
Anders Hejlsberg 08c288d4f9 Accept new baselines 2018-04-24 10:02:54 -07:00
Anders Hejlsberg 57ef618120 Add regression test 2018-04-24 10:02:47 -07:00
Anders Hejlsberg e71afc32ad Reinstate type simplification for 'keyof T[K]' as target in relation 2018-04-24 10:02:34 -07:00
Anders Hejlsberg f0c3291976 Accept new baselines 2018-04-23 21:09:56 -07:00
Anders Hejlsberg 7befd35009 Add tests 2018-04-23 21:09:49 -07:00
Anders Hejlsberg 2911d5d7d7 Accept new baselines 2018-04-23 20:57:20 -07:00
Anders Hejlsberg 09590bc041 Transform 'keyof (A | B)' to 'keyof A & keyof B' 2018-04-23 20:57:11 -07:00
Anders Hejlsberg 0179d97403 Merge pull request #23592 from Microsoft/improveIndexTypes
Support number and symbol named properties with keyof and mapped types
2018-04-23 13:22:56 -07:00
Anders Hejlsberg c7f55be90c Accept new baselines 2018-04-21 09:32:54 -07:00
Anders Hejlsberg 652e4932f6 Address CR feedback 2018-04-21 09:32:46 -07:00
Anders Hejlsberg b38e42e41e Accept new baselines 2018-04-20 09:56:07 -07:00
Anders Hejlsberg eb7bbfb28e Properties with numeric names have numeric literal types in keyof T 2018-04-20 09:55:59 -07:00
Anders Hejlsberg 5f0d88096c Update test 2018-04-18 15:43:32 -07:00
Anders Hejlsberg 9e4e215a03 Revise IndexType to have stringsOnly property 2018-04-18 15:43:22 -07:00
Anders Hejlsberg 254782c06f Accept new baselines 2018-04-18 11:01:25 -07:00
Anders Hejlsberg b14d389085 For 'T extends { [x: string]: XXX }' constraint of T[keyof T] is XXX 2018-04-18 11:01:09 -07:00
Anders Hejlsberg 02534cca31 Accept new baselines 2018-04-17 16:29:49 -07:00
Anders Hejlsberg b11be80349 Don't widen unique symbol types during type inference 2018-04-17 16:29:42 -07:00
Anders Hejlsberg 16cd5580a6 Merge branch 'master' into improveIndexTypes
# Conflicts:
#	src/compiler/checker.ts
#	src/server/utilities.ts
2018-04-16 16:18:29 -07:00
Anders Hejlsberg 8cb515ab13 Add members for numeric and symbol named properties in mapped types 2018-04-16 07:16:26 -07:00
Anders Hejlsberg 6c60f7e243 Accept new baselines 2018-04-14 17:16:07 -10:00
Anders Hejlsberg c344e6d0ba Fixes and improvements to indexed access type relationships 2018-04-14 17:10:05 -10:00
Anders Hejlsberg b746f8e8a4 Accept new baselines 2018-04-10 17:39:55 -10:00
Anders Hejlsberg 0a37cd3736 Update test 2018-04-10 17:35:27 -10:00
Anders Hejlsberg b40592c34e String index signatures do not apply to symbols 2018-04-10 17:35:11 -10:00
Anders Hejlsberg b1545fe5ef Accept new baselines 2018-04-09 08:52:20 -10:00
Anders Hejlsberg 0379666bbf Update tests 2018-04-09 08:51:55 -10:00
Anders Hejlsberg 6d93f30839 Enable 'keyof T' for full string | number | symbol 2018-04-09 08:51:26 -10:00
Anders Hejlsberg 2c02195560 Accept new baselines 2018-04-09 07:48:13 -10:00
Anders Hejlsberg 68ce69a351 Move 'PropertyKey' from es2015.core.d.ts to es5.d.ts 2018-04-09 07:45:55 -10:00
Anders Hejlsberg ff20f38405 Add support for numbers and symbols in keyof (but keep it disabled) 2018-04-09 07:45:13 -10:00
Anders Hejlsberg ccf20d3f67 Accept new baselines 2018-04-06 09:52:10 -07:00
Anders Hejlsberg fc85ba9e6a Limit getLiteralTypeFromPropertyName to only return string-like types 2018-04-06 09:52:00 -07:00
Anders Hejlsberg 39bb93fb1a Move nameType to base Symbol, generate nameType properties where missing 2018-04-05 16:00:06 -07:00
Anders Hejlsberg a8d6a45cd6 Move nameType from SymbolLinks to TransientSymbol 2018-04-05 06:25:34 -07:00
Anders Hejlsberg 6646717ce7 Merge pull request #23112 from Microsoft/fixTPReferenceLookups
Fix type parameter reference lookups
2018-04-03 12:32:05 -07:00
Anders Hejlsberg 6ea2745643 Accept new baselines 2018-04-03 09:04:42 -07:00
Anders Hejlsberg cdf155e980 Add regression test 2018-04-03 09:04:36 -07:00
Anders Hejlsberg e584243d60 Only look up identifiers that could actually be type parameters 2018-04-03 09:04:24 -07:00