Wesley Wigham
ed61d2d803
Emit updated export declarations when transformed from export * ( #18017 )
...
* Failing test for missing transform output
* dont elide all export stars
* Remove comment from test
* Refuse to perform ellision on transformed nodes
2017-09-06 21:58:04 -07:00
Wesley Wigham
5c779b1edb
Allow singleline string writer to be recursively used ( #18297 )
...
* Allow singleline string writer to be recursively used
* Add unit test exposing issue
* Fix lints
2017-09-06 21:56:16 -07:00
Wesley Wigham
73eff819b5
Fix 18224 ( #18259 )
...
* Probably fix 18224
* Corrected test
2017-09-06 14:44:29 -07:00
Anders Hejlsberg
fc16330043
Minor changes
2017-09-06 09:48:00 -07:00
Anders Hejlsberg
95bf71f08c
Use canonicalized forms when comparing signatures
2017-09-05 17:17:04 -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
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
319617c5d8
Optimize caching of type literals
2017-09-03 08:53:04 -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
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
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
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
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
Andy
9daa70c47e
Revert "Handle indexed access types in getSymbolAtLocation and findAllReferences ( #17787 )" ( #18111 )
...
This reverts commit 30b3cb0f682df870fe23f8b1196bab06de1380b6.
2017-08-29 09:37:27 -07:00
Andy
7306b13f74
Don't issue a use-before-declared error for a property that exists in a superclass ( #17910 )
...
* Don't issue a use-before-declared error for a property that exists in a superclass
* Simplify isInPropertyInitializer
* Respond to PR comments
2017-08-29 09:18:09 -07:00
Anders Hejlsberg
e3b1487240
Check all properties are present before checking types in relationships
2017-08-29 09:00:17 -07:00
Andy
30b3cb0f68
Handle indexed access types in getSymbolAtLocation and findAllReferences ( #17787 )
2017-08-29 07:53:22 -07:00
Andy
934da9fb39
Remove template strings in checker.ts ( #18016 )
...
* Remove template strings in checker.ts
* Inline function
2017-08-28 15:03:34 -07:00
Daniel Rosenwasser
a60b1037f8
Merge pull request #18077 from fwouts/regex-bug
...
Fix #18071 : Printer failure when encountering RegularExpressionLiteral
2017-08-28 14:10:29 -07:00
Nathan Shively-Sanders
278dcc6fac
Merge pull request #18029 from Microsoft/allow-string-enum-in-element-access
...
Allow string enum in element access
2017-08-28 12:56:08 -07:00
Andy
bab287d252
Simplify getAccessibleSymbolChain ( #18053 )
2017-08-28 11:44:41 -07:00
Nathan Shively-Sanders
8087206078
Explain boolean exception in getIndexedAccessType
...
Booleans are not treated like other unions in order to skip straight to
error reporting so that the error is reported with 'boolean' instead of
'true'.
2017-08-28 11:09:25 -07:00
Nathan Shively-Sanders
197040d3fd
Merge branch 'master' into allow-string-enum-in-element-access
2017-08-28 11:00:13 -07:00
Francois Wouts
884cadf0a3
Fix TypeScript printer bug when encountering regular expression literals
...
See https://github.com/fwouts/sample-js-selfparsing/blob/typescriptbug/src/script.js to reproduce the bug.
Not sure where to put tests for this, unfortunately!
2017-08-27 22:03:56 +10:00
Wesley Wigham
a32d99dfc8
Use visitNode ( #18059 )
2017-08-25 18:22:03 -07:00
Andy
e73b10a304
Use isPartOfExpression in extractMethod, not isExpression ( #18047 )
...
* Use isPartOfExpression in extractMethod, not isExpression
* Add whitespace
2017-08-25 15:15:16 -07:00
Andy
4d05bfdf4a
moduleAugmentations may contain an Identifier (#18009 )
...
* `moduleAugmentations` may contain an `Identifier`
* Add comment
* Rename function
2017-08-25 15:14:51 -07:00
Ron Buckton
eb75619cda
Merge pull request #18051 from Microsoft/fix17551
...
Fix crash in name resolution with custom transforms and emitDecoratorMetadata
2017-08-25 15:14:21 -07:00
Wesley Wigham
38c3f67652
Visit destructuring computed names ( #18052 )
2017-08-25 15:10:47 -07:00
Ron Buckton
bdfb92aebe
Fix crash in name resolution with custom transforms and emitDecoratorMetadata
2017-08-25 14:17:48 -07:00
Anders Hejlsberg
555a742d16
Merge pull request #18042 from Microsoft/fixMappedTypeIndexedAccess
...
Defer mapped type indexed access transformations
2017-08-25 20:59:16 +01:00
Andy
fe1242c8a9
Don't try to extract import to a method ( #18025 )
2017-08-25 09:53:56 -07:00
Andy
3a0ab74ed6
Test for action description of code actions, and simplify description for extracting method to file ( #18030 )
...
* Test for action description of code actions, and simplify description for extracting method to file
* Add unit test file missing from tsconfig.json (only affects gulp) and update tests
* Use the actual number
* Use "module scope" or "global scope" instead of "this file"
2017-08-25 09:53:28 -07:00
Anders Hejlsberg
3d3ed04b28
Perform indexed access type transformations consistently
2017-08-25 08:49:34 -07:00
Anders Hejlsberg
616bb5fcf6
Defer mapped type indexed access transformations
2017-08-25 07:10:53 -07:00
Wesley Wigham
62eaaf9206
Fix crash when attempting to merge an import with a local declaration ( #18032 )
...
* There should be no crash when attempting to merge an import with a local declaration
* Show symbol has actually merged within the module
2017-08-24 17:12:42 -07:00
Wesley Wigham
643a7e7e33
Call dynamic import transform on expression used by export equal statement ( #18028 )
...
* Call dynamic import transform on expression used by export equal statement
* Use Debug.fail
2017-08-24 17:08:57 -07:00