* Don't count a write-only reference as a use
* Split isWriteAccess to isWriteOnlyAccess and isReadOnlyAccess
* Update "unusedParameterUsedInTypeOf" to use "b"
* Update diagnostic messages: "is never used" -> "its value is never read"
* Use a WriteKind enum
* Rename enum and move documentation to enum members
* extractMethod: Support renameLocation
* Add tslint disable
* Properly analyze list of changes to always get a correct rename location
* Update test
* Ensure name is really unique
* Improvements to test code
* Respond to PR comments
1. It was looking at the parent which wasn't guaranteed to be in the
extracted range.
2. It was checking direct, rather than indirect containment - apparently
to avoid applying the rules to certain expressions (which can't contain
jumps anyway, unless they're in anonymous functions, in which case
they're fine).
Fixes#18144
* Ensure that emitter calls calbacks
* Move new parameter to end of parameters
* Fix for ConditionalExpression
* Make suggested changes to emitter
* Fix parameter ordering
* Respond to minor comments
* Remove potentially expensive assertion
* More emitter cleanup
* Add typedef declaration space, unify typedef name gathering, strengthen errorUnusedLocal
* Bonus round: make jsdoc presence way mroe typesafe
* Be exhaustive in nameForNamelessJSDocTypedef
* Remove nonrequired casts
* Replace more casts with guards
* Cannot be internal
* Debug.fail returns never, assert never no longer needs unreachable throw to satisfy checker
* Rename type
* Add replacement message as in 18287
* Support find-all-references for anonymous default exports
* Also handle re-exported default exports
* Add test for using `export =` with `--allowSyntheticDefaultExports`
* Allow quoted names in completions
* Don't allow string literal completions if not in an object literal; and use string literals for number keys
* Add TODO
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.
* 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"