Commit graph

19113 commits

Author SHA1 Message Date
Nathan Shively-Sanders 7c69dd84b9 Disable lookahead in isStartOfParameter/isStartOfType 2017-09-06 13:11:35 -07:00
Nathan Shively-Sanders d790f1d9d3 Merge pull request #18258 from Microsoft/improve-complexRecursiveCollections-baseline
Improve baseline of complexRecursiveCollections
2017-09-05 14:58:22 -07:00
Wesley Wigham 6ae761720e Add test for #14574 (#18024) 2017-09-05 13:37:51 -07:00
Anders Hejlsberg 6c8bc182a9 Merge pull request #18231 from Microsoft/cacheAnonymousTypes
Improve caching of anonymous types
2017-09-05 21:11:17 +01:00
Nathan Shively-Sanders 3a164b955b Improve baseline of complexRecursiveCollections
By adding @lib:es6, which gets rid of tons of bogus errors.
The point of the test is compile time, but it's more
confidence-inspiring to know that basic ES6 collections are getting
resolved and typechecked too.
2017-09-05 12:55:18 -07:00
Nathan Shively-Sanders b6c708d319 Merge pull request #18207 from Microsoft/recursive-type-reference-cache
Expand type references recursively in cache key
2017-09-05 11:03:55 -07:00
Nathan Shively-Sanders 2fc14d8ae8 Remove added type predicates
I forgot that 'f(x): x is T' implies that x is *not* T if f returns
false.
2017-09-05 10:39:32 -07:00
Nathan Shively-Sanders d4708dcab2 Merge branch 'master' into recursive-type-reference-cache 2017-09-05 10:36:46 -07:00
Anders Hejlsberg 1edecac0ab Merge pull request #18126 from Microsoft/propertyRelations
Compare shapes of objects before comparing contained types
2017-09-03 20:33:58 +01:00
Anders Hejlsberg 82281d9910 Fix linting errors 2017-09-03 11:00:03 -07:00
Anders Hejlsberg a0c40943fe Accept new baselines 2017-09-03 08:53:19 -07:00
Anders Hejlsberg 319617c5d8 Optimize caching of type literals 2017-09-03 08:53:04 -07:00
Anders Hejlsberg 601a21c77b Fix signature help 2017-09-02 15:39:14 -07:00
Anders Hejlsberg b65ff647c1 Improved caching scheme for anonymous types 2017-09-02 10:27:48 -07:00
Nathan Shively-Sanders 541920eb31 Merge pull request #18014 from Microsoft/allow-bang+dotdotdot-as-start-of-type
Allow bang+dotdotdot as start of type
2017-09-01 14:26:16 -07:00
Nathan Shively-Sanders 520d7fff49 Add depth limit to recursive type reference id generation
4 is the limit.
2017-09-01 14:19:12 -07:00
Andy 7a4c3da239 Simplify return type parsing (#18206)
* Simplify return type parsing

* Make control flow clearer
2017-09-01 10:58:49 -07:00
Nathan Shively-Sanders c9d081eed4 Expand type references recursively in cache key
This means that `A<B<T, C<U>>>` will include the keys for `B` and `C`
now.
2017-09-01 09:55:38 -07:00
Matt Bierner c7b4ed3a91 Fix extract method for anon class expressions (#18168)
Check `scope.name` when trying to extract from an anon class
2017-08-31 13:21:08 -07:00
Mohamed Hegazy 3d0c239bfd Update generated files (#18173) 2017-08-31 11:42:56 -07:00
Wesley Wigham 3e850156da Propagate isRestParameter through symbol instantiation (#18087)
* Add repro from #17666

* Actually use repro from issue, propegate isRestParameter on instantiation
2017-08-31 10:15:42 -07:00
Anders Hejlsberg e294b23500 Merge pull request #18174 from Microsoft/fixContextualTypeLogicalOr
Fix exponential compile time for || operator
2017-08-31 17:12:51 +01:00
Anders Hejlsberg 42b66066f9 Add regression test 2017-08-30 17:14:16 -07:00
Mohamed Hegazy 4c543230c6 Update Authors.md 2017-08-30 16:53:22 -07:00
Anders Hejlsberg effa2597fa Cache contextual type for || operator to avoid exponential compile time 2017-08-30 16:22:16 -07:00
Andy 601c113d93 Handle indexed access types in getSymbolAtLocation and findAllReferences (#18149)
* Handle indexed access types in getSymbolAtLocation and findAllReferences

* Update baselines, simplify `const objectType`
2017-08-30 14:19:49 -07:00
Mohamed Hegazy 562abf333a Follow up on #16223 cleaning up Array declarations (#18116)
* Follow up on #16223, Remove generic signatures from Array, ReadOnlyArray and TypedArrays

* Remove test

* Accept baselines

* Remove invalid `this: void` in callbacks

* accept baselines
2017-08-30 10:22:02 -07:00
Andy 2b4b629f9b Remove largeSource argument to convertMap.fromSource (#18098) 2017-08-30 10:02:30 -07:00
Andrew Casey 27e590dd5e Merge pull request #18121 from amcasey/WalkerCancel
Allow cancellation during extract method's symbol walking
2017-08-29 17:24:12 -07:00
Andrew Casey 19c3a150e7 Allow cancellation during extract method's symbol walking 2017-08-29 15:38:43 -07:00
Ryan Cavanaugh fa77e141b0 Merge pull request #17811 from RyanCavanaugh/fix17544
Filter + log undefined elements from the codeActions array
2017-08-29 15:32:44 -07:00
Ryan Cavanaugh d7b3b6c77d Merge pull request #18120 from RyanCavanaugh/fix457864
Don't crash when a JS file appears in an inferred context
2017-08-29 14:18:47 -07:00
Ryan Cavanaugh 0e2d399c49 Don't crash when a JS file appears in an inferred context 2017-08-29 13:29:56 -07:00
Andrew Casey ea4fdc5a99 Merge pull request #17988 from amcasey/ExtractGeneric
Handle loose type parameters in Extract Method
2017-08-29 13:00:03 -07:00
Andy 450c32ace0 Add an ExpandingFlags const enum (#17740)
* Add an ExpandingFlags const enum

* Reformat
2017-08-29 11:33:01 -07:00
Andrew Casey a816079dda Add perf comment 2017-08-29 11:24:07 -07:00
Andrew Casey c9f6bc60e2 Test coupling of type parameters 2017-08-29 11:24:07 -07:00
Andrew Casey e08dce2c21 Test different parameters on classes and methods 2017-08-29 11:24:06 -07:00
Andrew Casey 01d7f0b699 Test that the return type of the extracted method counts as usage 2017-08-29 11:24:05 -07:00
Andrew Casey 0c8d85fbc4 Test that type parameters used in constraints are passed along 2017-08-29 11:24:04 -07:00
Andrew Casey fe015ef30f Document failure to handle type parameter shadowing 2017-08-29 11:24:04 -07:00
Andrew Casey b09d2277b8 Test that in-scope type parameters are not passed explicitly 2017-08-29 11:24:03 -07:00
Andrew Casey ee80019d16 Switch from .js to .ts so that baselines are syntactically valid 2017-08-29 11:15:58 -07:00
Andrew Casey bf0333ae07 Delete unused baselines 2017-08-29 11:15:58 -07:00
Andrew Casey b2cc722483 Comment out headers in Extract Method baselines 2017-08-29 11:15:54 -07:00
Andrew Casey 30802cda97 Handle loose type parameters in Extract Method
Known limitations:

1. If a type parameter on an inner symbol shadows a type parameter on an
outer symbol, the generated code will be incorrect.  We should either
rename one or more type parameters or forbid the extraction.

2. Type arguments are always passed explicitly, even if they would be
inferred correctly.
2017-08-29 11:10:16 -07:00
Andy 2350d46e44 Simplify isContextSensitive (#17722) 2017-08-29 10:28:22 -07:00
Andy 7ac4380514 Use getPropertyOfObjectType to get a superclass property (#18113) 2017-08-29 10:23:30 -07:00
Andy 78524c1b90 Avoid climbing ancestors in getAnyImportSyntax (#17832) 2017-08-29 09:41:57 -07:00
Andy 6168d6f074 Inline checkLiteralExpression (#17720) 2017-08-29 09:38:44 -07:00