Tingan Ho
752e0ba003
Fixes type predicate crash bug
2015-06-18 23:04:05 +08:00
Mohamed Hegazy
6db4faf488
Merge pull request #3545 from Microsoft/emitNamespaces
...
Emit declarations of namespaces correctly
2015-06-17 23:56:21 -07:00
Mohamed Hegazy
7361d68d25
Merge pull request #3542 from weswigham/jake-lssl
...
Add build target for packaging tsserver as a library
2015-06-17 23:54:04 -07:00
Mohamed Hegazy
75e6071395
Merge pull request #3527 from piloopin/fix-intl.d.ts
...
Fix Intl.DateTimeFormat.format and Int.NumberFormatOptions signature
2015-06-17 23:36:01 -07:00
Mohamed Hegazy
76ec1f0fec
Add a non-generic construct signature to Map, Set, and WeakMap
2015-06-17 21:28:49 -07:00
Wesley Wigham
9cc97f1fc5
feedback from pr #3542
2015-06-17 21:17:09 -07:00
Mohamed Hegazy
3d224bde48
Emit declarations of namespaces correctelly
2015-06-17 17:50:03 -07:00
Anders Hejlsberg
0fe60498d7
Adding SyntaxKind.ClassExpression in a bunch of places
2015-06-17 17:11:42 -07:00
Ron Buckton
7443ecc6a5
Cleaned up diagnostics
2015-06-17 16:30:25 -07:00
Ron Buckton
02f6622e43
Changed createPromiseType to return emptyObjectType
2015-06-17 16:28:32 -07:00
Ron Buckton
b00a9579a8
Removed unneeded capture for lexical this
2015-06-17 16:16:55 -07:00
Ron Buckton
c74bb842ba
Moved getContainingFunction call in checkIdentifier
2015-06-17 16:11:14 -07:00
Ron Buckton
82eae194f1
Inlined checks for NodeFlags.Async in parser
2015-06-17 16:10:17 -07:00
Ron Buckton
b25d855341
Removed unused getContainingParameter function
2015-06-17 16:05:55 -07:00
Arthur Ozga
19b0c519fc
merged master
2015-06-17 15:07:49 -07:00
Jason Freeman
ab61bf2a6d
Merge pull request #3532 from Microsoft/exportSpecifierScoping
...
Make resolveName ignore export specifiers without calling getSymbol
2015-06-17 15:05:34 -07:00
Arthur Ozga
a07f86240d
forbid calling abstract member foo() via super.foo()
2015-06-17 15:01:34 -07:00
Anders Hejlsberg
26fd879843
Merge branch 'master' into extendsExpressions
2015-06-17 14:12:47 -07:00
Anders Hejlsberg
efcccaa4f8
Addressing more CR feedback
2015-06-17 14:04:05 -07:00
Anders Hejlsberg
d71af8a3fb
Addressing CR feedback
2015-06-17 13:28:39 -07:00
Wesley Wigham
7390fe0eab
Feedback form pr #3513
2015-06-17 13:21:43 -07:00
Anders Hejlsberg
33b0a5633e
Merge pull request #3524 from Microsoft/extendsNull
...
Support null in __extends helper
2015-06-17 13:15:22 -07:00
Colby Russell
5f1fe3740b
Fix line endings in program.ts
2015-06-17 13:08:13 -05:00
Cyrus Najmabadi
d206f62adb
Squueze perf in syntactic classification.
2015-06-16 17:56:11 -07:00
Jason Freeman
41e39735e8
Make resolveName ignore export specifiers without calling getSymbol
2015-06-16 17:06:00 -07:00
Cyrus Najmabadi
3bb7be96fa
Scan less during classification.
2015-06-16 16:07:24 -07:00
Arthur Ozga
1d5dcf0d0c
changes that are non-breaking
2015-06-16 15:39:34 -07:00
Arthur Ozga
aed48ecb99
changed to '==' to '===', '!=' to '!=='
2015-06-16 14:56:31 -07:00
Cyrus Najmabadi
2e16680f01
Re-number enum.
2015-06-16 14:00:31 -07:00
Cyrus Najmabadi
009c3ee43a
Merge branch 'master' into removeGeneratorParameter
...
Conflicts:
src/compiler/checker.ts
src/compiler/parser.ts
src/compiler/types.ts
2015-06-16 13:48:03 -07:00
Arthur Ozga
388e2fd926
merge with extendsExpressions
2015-06-16 13:33:03 -07:00
piloopin
6ee1890e94
Fix Intl.DateTimeFormat.format and Int.NumberFormatOptions signature
2015-06-17 00:57:23 +04:30
Cyrus Najmabadi
f1c99f3397
Remove generatorParameter and asyncParameter contexts.
2015-06-16 13:25:46 -07:00
Anders Hejlsberg
3b5d73f5ce
Use Object.create(null) in __extends when base is null
2015-06-16 12:13:18 -07:00
Anders Hejlsberg
2c57776f91
Merge branch 'master' into extendsExpressions
...
Conflicts:
src/compiler/checker.ts
tests/baselines/reference/strictModeReservedWordInClassDeclaration.errors.txt
2015-06-16 12:04:04 -07:00
Anders Hejlsberg
38e3d9f718
Adding another comment
2015-06-16 11:53:00 -07:00
Anders Hejlsberg
de8eb229c8
Adding comments and doing a bit of renaming
2015-06-16 11:49:15 -07:00
Arthur Ozga
864a28a586
forbid abstract methods from having an implementation
2015-06-16 10:02:21 -07:00
Anders Hejlsberg
e305de1403
Workaround to match previous type writer output
2015-06-16 06:54:10 -07:00
Cyrus Najmabadi
300089ce2d
PR feedback.
2015-06-15 23:31:40 -07:00
Cyrus Najmabadi
d558e42d94
External modules are always in strict mode in ES6
2015-06-15 18:20:44 -07:00
Cyrus Najmabadi
dcbfa6988a
Modules are always in strict mode in ES6.
2015-06-15 18:01:18 -07:00
Cyrus Najmabadi
417cfa5c2c
Check namespaces for strict mode.
2015-06-15 17:48:15 -07:00
Cyrus Najmabadi
ec9e461869
Remove 'strict mode' from parsing and checking, and make it purely something purely checked at bind time.
2015-06-15 17:31:15 -07:00
Arthur Ozga
1954322155
Fixed some indentation issues
2015-06-15 17:10:53 -07:00
Arthur Ozga
506349f9c5
Fix merge conflicts with master
2015-06-15 16:48:09 -07:00
Arthur Ozga
5316d0d0df
Abstract keyword: Added parsing and some checks
...
keyword `abstract` is parsed at the head of class declarations and as a modifier for class member functions/variables.
The following checks have been implemented:
* Objects whose type is an abstract class cannot be instantiated with `new`.
* all overloads of a function must match w/r/t having the abstract keyword.
* a member/class decl can't use the `abstract` keyword multiple times.
* a member can't be both `abstract` and `static`.
* a member can't be both `abstract` and `private`.
* Accessibility modifiers can't follow `abstract`
* Only classes and member functions can be declared abstract.
* abstract methods don't need an implementation
* abstract methods can only appear in abstract classes.
TODO:
* forbid abstract methods from having an implementation.
* make sure, barring overriding, an inherited method is abstract iff it is abstract in the parent.
* If a class has an abstract members, then it must be abstract. (eg: class B does not implement inherited member 'foo()')
* prevent overriding a non-abstract method with an abstract method.
* update "abstractness" flag when overriding abstract method with non-abstract method.
* prevent calling an abstract method via super.<abstract method name>()
* make all overloads of an abstract method adjacent to eachother.
* constructors can't be declared abstract -- give appropriate error.
* figure out what to emit to the *.ts file -- probably nothing.
* figure out what to emit to the *.d.ts file.
* process abstract declarations.
2015-06-15 16:29:34 -07:00
Jason Freeman
54edbaeea7
Parse class member with a missing identifier in the presence of a modifier
2015-06-15 16:28:29 -07:00
Anders Hejlsberg
cc81cc77f9
Check that base constructor return types are identical
...
Treat class extends clause as expression position in services.ts
2015-06-15 15:44:43 -07:00
Wesley Wigham
8554791574
Decouple ts.sys from the editorServices where possible
2015-06-15 13:37:19 -07:00