Nathan Shively-Sanders
c73efe2fb6
Fix comment
2016-08-17 10:45:35 -07:00
Nathan Shively-Sanders
07a8f31a2d
Correctly merge bindThisPropertyAssignment
...
Also simply it considerably after noticing that it's *only* called for
Javascript files, so there was a lot of dead code for TS cases that
never happened.
2016-08-17 10:43:02 -07:00
Nathan Shively-Sanders
96840c3669
Merge branch 'master' into allow-js-multiple-declaration-of-constructor-properties
2016-08-17 09:04:10 -07:00
Nathan Shively-Sanders
f3c085e595
Merge branch 'master' into classPropertyInference
2016-08-15 15:52:29 -07:00
Ron Buckton
4e04b75d4b
Aligned mark names with values used by ts-perf.
2016-08-15 11:07:49 -07:00
Ron Buckton
c81624435a
Simplifies performance API
2016-08-12 16:34:35 -07:00
Anders Hejlsberg
87393e026e
Merge branch 'master' into optimizeMaps
2016-08-12 13:31:37 -07:00
Anders Hejlsberg
65e1293b2e
Optimize performance of maps
2016-08-10 16:47:06 -07:00
Nathan Shively-Sanders
2845d2f8b8
Improve naming and documentation from PR
2016-08-08 09:04:46 -07:00
Nathan Shively-Sanders
8f638f7ecd
Fix lint
2016-08-05 09:58:30 -07:00
Nathan Shively-Sanders
798be6f4f9
Add new test baseline and delete else in binder
...
The extra `else` caused a ton of test failures!
2016-08-04 15:17:08 -07:00
Nathan Shively-Sanders
8c01efba04
Allow JS multiple declarations of ctor properties
...
When a property is declared in the constructor and on the prototype of
an ES6 class, the property's symbol is discarded in favour of the
method's symbol. That because the usual use for this pattern is to bind
an instance function: `this.m = this.m.bind(this)`. In this case the
type you want really is the method's type.
2016-08-03 10:33:10 -07:00
Andy Hanson
f9fd4967af
Allow export = and export default to alias any EntityNameExpression, not just identifiers.
2016-07-29 08:12:00 -07:00
Anders Hejlsberg
ff0cbb5b29
Merge branch 'master' into literalTypes
...
# Conflicts:
# src/compiler/checker.ts
2016-07-24 07:28:11 -07:00
Anders Hejlsberg
8c64759f75
Fix bug in binder uncovered by changes
2016-07-22 14:28:09 -07:00
Wesley Wigham
2a26beb9d8
Add performance framework from transforms branch ( #9536 )
...
* Port performance tools from transforms branch
* Use friendlier names, add compiler option to print all recorded measures
* Always print total time
* + -> .getTime
2016-07-19 15:10:29 -07:00
Anders Hejlsberg
868d5e602f
Merge branch 'master' into literalTypes
2016-07-06 19:51:34 -07:00
Anders Hejlsberg
a8a8826f69
Exclude FlowSwitchClause from flow graph for case expressions
2016-07-04 20:27:59 -07:00
Anders Hejlsberg
e14fe5b830
Remove unused functions
2016-06-28 17:12:46 -07:00
Anders Hejlsberg
85128e02da
Narrow unions of literal types by equality and truthiness
2016-06-28 17:00:52 -07:00
Anders Hejlsberg
c7dec0ea68
Merge pull request #9163 from Microsoft/typeGuardDiscriminants
...
Discriminated union types
2016-06-17 14:37:35 -07:00
Anders Hejlsberg
a3635ccd8b
Merge branch 'master' into typeGuardDiscriminants
...
# Conflicts:
# src/compiler/binder.ts
# src/compiler/checker.ts
2016-06-14 13:08:17 -07:00
Nathan Shively-Sanders
7890fd58b9
Merge pull request #9088 from Microsoft/add-members-to-variable-declarations-initialised-with-function-expressions
...
Add members to variable declarations initialised with function expressions
2016-06-14 11:37:36 -07:00
Anders Hejlsberg
c90b0fe17d
No implicit returns following exhaustive switch statements
2016-06-13 16:20:13 -07:00
Anders Hejlsberg
ce156460eb
Narrow type in case/default sections in switch on discriminant property
2016-06-13 14:29:04 -07:00
Nathan Shively-Sanders
8b093128b3
Merge pull request #9036 from Microsoft/primitive-type-guards-are-order-independent
...
Primitive type guards are order independent
2016-06-13 10:52:06 -07:00
Anders Hejlsberg
4a8f94a553
Type guards using discriminant properties of string literal types
2016-06-10 16:17:32 -07:00
Nathan Shively-Sanders
642583771d
Salsa: get members of variables whose initialisers are functions
2016-06-10 14:10:30 -07:00
Andy Hanson
ff6e025e8a
Merge branch 'master' into shorthand_ambient_module
2016-06-10 06:03:54 -07:00
Nathan Shively-Sanders
86a6959e2a
Merge branch 'master' into primitive-type-guards-are-order-independent
2016-06-09 15:56:34 -07:00
Nathan Shively-Sanders
a1e4b31d16
Allow null/undefined guard with null/undefined on left
...
Also add a test with baselines.
2016-06-09 15:48:35 -07:00
Andy
9ffd00d6ff
Merge pull request #8939 from Microsoft/pattern_ambient_modules
...
Allow wildcard ("*") patterns in ambient module declarations
2016-06-09 13:08:02 -07:00
Andy Hanson
75c1d77606
Merge branch 'master' into shorthand_ambient_module
2016-06-09 11:43:18 -07:00
Nathan Shively-Sanders
7c1b28f2cb
Allow primitive type guards with typeof on right
...
Previously, only type guards of the form `typeof x === 'string'` were
allowed. Now you can write `'string' === typeof x`.
2016-06-08 15:55:08 -07:00
Andy Hanson
1541ebe781
Respond to PR comments
2016-06-03 06:34:33 -07:00
Andy Hanson
094f97e366
Respond to PR comments
2016-06-03 06:22:34 -07:00
Andy Hanson
7e9cb46a1a
Support shorthand ambient module declarations
2016-06-02 12:55:48 -07:00
Anders Hejlsberg
5f3f2d302f
Create separate control flows for property declarations with initializers
2016-06-02 06:47:37 -07:00
Andy Hanson
3b19825890
Allow wildcard ("*") patterns in ambient module declarations
2016-06-02 05:44:49 -07:00
zhengbli
241920c960
Merge branch 'outerControlFlows' of https://github.com/Microsoft/TypeScript into typedefForJsdoc
...
# Conflicts:
# src/compiler/binder.ts
2016-05-31 14:02:45 -07:00
Zhengbo Li
5261467a32
Merge branch 'master' of https://github.com/Microsoft/TypeScript into typedefForJsdoc
2016-05-31 10:39:23 -07:00
zhengbli
18ee4b0a1e
cr feedback
2016-05-30 22:11:43 -07:00
Anders Hejlsberg
5b4dffc2d7
More critical path optimization in binder
2016-05-29 16:04:34 -07:00
Anders Hejlsberg
66e9f7dc21
Optimize critical code paths in binder
2016-05-28 16:00:31 -07:00
Anders Hejlsberg
e8ecf0e615
Track return statements in IIFE using a flow label
2016-05-28 06:43:28 -07:00
Vladimir Matveev
92938cd8df
check that default clause is non-empty in reachability checks
2016-05-27 15:38:59 -07:00
Anders Hejlsberg
3b5c72c4bc
Include outer function expressions in control flow analysis
2016-05-26 15:30:31 -07:00
zhengbli
e69976c4b7
Merge branch 'master' of https://github.com/Microsoft/TypeScript into typedefForJsdoc
...
# Conflicts:
# src/services/utilities.ts
2016-05-26 14:50:09 -07:00
zhengbli
81ce532cde
Change how typedef tag is parsed
2016-05-26 14:33:30 -07:00
Nathan Shively-Sanders
abfcdd2cfd
Symbol for property assignments in Salsa/ES6 constructors
...
Previously no symbol at all was created, meaning that Salsa didn't track
properties in ES6 code.
2016-05-26 12:42:35 -07:00