9411 Commits

Author SHA1 Message Date
Andy
c6a6467073 Remove unneeded ExportType and ExportNamespace flags (#16766) 2017-07-13 09:21:13 -07:00
Andy
69d3ca774a When adding completions for a module, don't get the type of the module if not necessary. (#16768)
* When adding completions for a module, don't get the type of the module if not necessary.

* Use SymbolFlags.Module alias
2017-07-13 09:20:40 -07:00
Andy
9a3847feac getSingleLineStringWriter: Use try-finally, and only one stringWriter (#16751)
* getSingleLineStringWriter: Use try-finally, and only one stringWriter

* Use a `usingSingleLineStringWriter` helper function

* Add assert
2017-07-13 08:13:49 -07:00
Andy
79b10081a9 getApplicableRefactors: Don't return undefined response (#16773) 2017-07-13 07:32:41 -07:00
Andy
dbbf051886 Add assertion to computePositionOfLineAndCharacter (#17121) 2017-07-13 06:49:28 -07:00
Yui
1c93531f0f Merge pull request #17025 from Microsoft/master-16763
[Master] Fix 16763
2017-07-12 16:36:04 -07:00
Andy
a0c672ac02 Add assertion that module / type reference names are defined (#17124) 2017-07-12 10:13:33 -07:00
Andy
815af7da17 getSwitchClauseTypes: exit early if getTypeOfSwitchClause is undefined (#16865) 2017-07-12 07:45:02 -07:00
Nathan Shively-Sanders
50f39102aa Merge pull request #17096 from Microsoft/improve-return-type-parse-error
Improve return type parse error
2017-07-12 07:18:23 -07:00
Daniel Rosenwasser
38f6db52ac Merge pull request #17079 from Microsoft/noTypeArgsSum
Declare 'sum' so that it doesn't require type arguments.
2017-07-12 00:09:58 -07:00
Andy
08030c7d02 Convert most of core.ts to accept ReadonlyArray (#17092)
* Convert most of core.ts to accept ReadonlyArray

* Fix lint

* Fix isArray
2017-07-11 17:39:33 -07:00
Yui
25f4e46638 Merge pull request #17082 from Microsoft/master-16201
[Master] Fix 16201: fix cannot find "object"
2017-07-11 17:13:01 -07:00
Daniel Rosenwasser
325f4b84cf Addressed feedback. 2017-07-11 15:32:31 -07:00
Nathan Shively-Sanders
1b1f257dbf Rename SignatureFlags enum and improve its usage
As requested in the PR comments
2017-07-11 14:49:47 -07:00
Nathan Shively-Sanders
8856ddfd15 Make enum private and fix fillSignature predicate 2017-07-11 10:45:25 -07:00
Nathan Shively-Sanders
b6ad43d4a5 Better error for wrong return (: vs =>) in types
It's very ambiguous in expression position, so impossible to give a
better message from the parser. For example:

let f = (x: number) => number => x + 1;
                    ~~
                    Should be ':'

But the parser doesn't know that 'number' isn't an expression now.
2017-07-11 10:08:42 -07:00
Andy
f45ccf541d In getDeclarationSpaces, treat a type alias as a SymbolFlags.Type, not a SymbolFlags.Value (#16624) 2017-07-11 09:54:42 -07:00
Nathan Shively-Sanders
fcc9823ac7 Switch fillSignature boolean params to single enum 2017-07-11 09:51:18 -07:00
Andy
2561ced1e3 Consistently use isInJavaScriptFile helper (#17075) 2017-07-11 07:26:45 -07:00
Andy
aa2d1008bf Completion for default export should be '.default' (#16742)
* Completion for default export should be '.default'

* Don't include empty string in name table

* getSymbolsInScope() should return local symbols, not exported symbols

* Fix bug: getSymbolAtLocation should work for local symbol too
2017-07-11 07:23:32 -07:00
Nathan Shively-Sanders
a94e0c36b0 Merge pull request #16969 from ikatyang/fix-16941
Add missing docs for module: 'none' in tsc --init
2017-07-10 16:54:54 -07:00
Kanchalai Tanglertsampan
e5f482d339 Treat both object and Object the same 2017-07-10 15:16:34 -07:00
Daniel Rosenwasser
d25fd23e04 Declare 'sum' so that it doesn't require type arguments. 2017-07-10 14:35:09 -07:00
Kanchalai Tanglertsampan
f15909bfe0 Merge branch 'master' into master-16763 2017-07-10 13:13:35 -07:00
Ron Buckton
bb3253e544 Merge pull request #17044 from filipesilva/patch-1
Allow visitors to return undefined
2017-07-10 11:47:48 -07:00
Andy
48876731b8 Type-check sum (#16823) 2017-07-10 11:44:56 -07:00
Andy
bffde588cc Improve performance of JSDoc tag utilities (#16836)
* Improve performance of JSDoc tag utilities

* Use emptyArray instead of null, and address PR comments
2017-07-10 11:26:59 -07:00
Andy
8c3f5e2208 Remove createFileMap (#16810)
* Make `createFileMap` an internal detail of `program.ts`

* Remove createFileMap

* Clean up calls to `toPath`
2017-07-10 11:24:17 -07:00
Andy
12163cc02e Allow to narrow the type of an import (#16658)
* Allow to narrow the type of an import

* Assume alias is initialized
2017-07-10 09:18:35 -07:00
Filipe Silva
ae533551c2 Allow visitors to return undefined
While implementing `ts.Visitor`, it is possible to return `undefined` in order to drop a node. However, the typings do not reflect this and only allow to return `Node | Node []`.

This PR extends the typings to allow `undefined` as well.
2017-07-09 18:50:45 +01:00
Anders Hejlsberg
ff5d245dcb Merge pull request #16954 from Microsoft/optimizeTypeRelations
Optimize structured type relations
2017-07-07 16:18:35 -10:00
Anders Hejlsberg
b866cd4969 Merge pull request #16952 from Microsoft/optimizeForEachChild
Optimize forEachChild function
2017-07-07 16:18:00 -10:00
Kanchalai Tanglertsampan
7e395c2f88 import keyword a left-hand-side expression 2017-07-07 15:53:24 -07:00
Andy
e6256d43c4 Inline getDestructuringParameterName (#16973) 2017-07-07 10:34:50 -07:00
Andy
17578e8a5d Use Map<true> for sets (#16972) 2017-07-07 10:34:36 -07:00
Andy
81f8151e3a Use 'push' and 'pop' methods instead of using array.length (#16979) 2017-07-07 10:22:59 -07:00
Andy
ba8e5a7e24 Never return undefined from getExportsOfModule (#17013) 2017-07-07 10:06:12 -07:00
Andy
e7dc2a67ca Enable "object-literal-shorthand" lint rule (#16987) 2017-07-07 07:26:58 -07:00
ikatyang
a79240fbc6 Add missing docs for module: 'none' in tsc --init 2017-07-07 18:25:22 +08:00
Wesley Wigham
4b19eb3200 Remove duplicate entries from tsconfig files (#16991) 2017-07-06 15:56:34 -07:00
Wesley Wigham
07e8263204 Start using a union for FunctionLike things (#16988)
* Start using a union for FunctionLike things

* Rename to shorter name
2017-07-06 14:46:15 -07:00
Wesley Wigham
4e6b2f3c93 Created a branded type for identifier-escaped strings (#16915)
* Created a branded type for escaped strings

Then flowed it throughout the compiler, finding and fixing a handful of
bugs relating to underscore-prefixed identifiers in the process.
Includes a test for two cases noticed - diagnostics from conflicting
symbols from export *'s, and enum with underscore prefixed member emit.

* Correctly double underscores WRT mapped types

* Add fourslash tests for other fixed issues

* use function call over cast

* Update forEachEntry type accuracy

* Just use escaped names for ActiveLabel

* Remove casts from getPropertyNameForPropertyNameNode

* This pattern has occurred a few times, could use a helper function.

* Remove duplicated helper

* Remove unneeded check, use helper

* Identifiers list is no longer escaped strings

* Extract repeated string-getting code into helper

* Rename type and associated functions

* Make getName() return UnderscoreEscapedString, add getUnescapedName()

* Add list of internal symbol names to escaped string type to cut back on casting

* Remove outdated comments

* Reassign interned values to nodes, just in case

* Swap to string enum

* Add deprecated aliases to escapeIdentifier and unescapeIdentifier

* Add temp var

* Remove unsafe casts

* Rename escaped string type as per @sandersn's suggestion, fix string enum usages

* Reorganize double underscore tests

* Remove jfreeman from TODO

* Remove unneeded parenthesis
2017-07-06 14:45:50 -07:00
Arthur Ozga
ad291d924d Merge pull request #16748 from aozgaa/implementOptionCrash
visit question token
2017-07-06 13:51:15 -07:00
Anders Hejlsberg
f18a177c97 Merge branch 'master' into optimizeTypeRelations 2017-07-05 07:01:38 -10:00
Anders Hejlsberg
7b9f5b3b66 Merge branch 'master' into optimizeForEachChild 2017-07-05 06:52:49 -10:00
Ron Buckton
2a6aacd0ef Merge pull request #16696 from Microsoft/fix15663
Ignore jsdoc when inferring rest args in JavaScript
2017-06-30 14:27:55 -07:00
Nathan Shively-Sanders
9048c0ae47 Merge pull request #16844 from Microsoft/codefix-spelling-correction-for-typeparameters
Spelling code fix: suggestions from apparent type
2017-06-30 12:56:18 -07:00
Nathan Shively-Sanders
e0bf267029 spelling:getPropertiesOfType instead of objectType
This provides suggestions for more types based on their apparent type:
unions, type parameters with constraints, primitives.
2017-06-30 10:11:00 -07:00
Nathan Shively-Sanders
2eec7f3565 Dedupe some utility code
1. convertToArray is a duplicate of arrayFrom
2. inferFromParameterTypes delegates immediately to inferFromTypes
3. One usage of arrayFrom instantiated a whole iterator only to take the
first element, which is the same as calling `next`.
2017-06-30 09:23:00 -07:00
Nathan Shively-Sanders
b1af566396 Remove unused code in bindWorker 2017-06-29 16:30:44 -07:00