Commit Graph

33920 Commits

Author SHA1 Message Date
Jason Freeman 279166be50 Address feedback 2014-11-06 11:51:49 -08:00
vladima c3a88d3482 code cleanup: replace nulls with undefined 2014-11-06 11:10:27 -08:00
vladima ace99ad051 code cleanup, removed unused files 2014-11-06 10:57:19 -08:00
vladima bbc2da79bb return last scanned token if possible 2014-11-06 00:37:58 -08:00
CyrusNajmabadi 147550e2d3 Merge pull request #1065 from Microsoft/shorthandProperties
Add support for parsing shorthand property assignments.
2014-11-05 22:53:43 -08:00
Vladimir Matveev 154977ce95 add child delta for all nodes 2014-11-05 19:35:53 -08:00
Daniel Rosenwasser 652b7f8909 Corrected comment. 2014-11-05 18:34:53 -08:00
Daniel Rosenwasser bcddb101aa Proper type arg inference with apppropriate overload res tests. 2014-11-05 18:20:40 -08:00
Jason Freeman bc70e4a29d Make certain types of FunctionLike require block bodies 2014-11-05 18:04:19 -08:00
Jason Freeman 6c85dbe140 Refactor Declaration.name into Identifier | ComputedPropertyName 2014-11-05 17:47:30 -08:00
Vladimir Matveev edbb99d959 merge with master 2014-11-05 17:34:42 -08:00
Vladimir Matveev 13054710c7 track effective parent indentation for list items 2014-11-05 17:07:47 -08:00
Vladimir Matveev 680b59481b fix indentation for nested items 2014-11-05 15:35:18 -08:00
Vladimir Matveev 9a30fa882b do not indent tokens with errors 2014-11-05 15:29:51 -08:00
Vladimir Matveev f28c1a3498 fix indentations in functions 2014-11-05 15:23:11 -08:00
Daniel Rosenwasser fea1165186 Merge branch 'master' into taggedTemplates 2014-11-05 14:06:19 -08:00
Daniel Rosenwasser 356622c8e9 Merge pull request #1067 from Microsoft/deduplicateTypeNotAssignableMessage
Removed duplicate diagnostic message.
2014-11-05 12:48:57 -08:00
Daniel Rosenwasser e12e31b144 Removed duplicate diagnostic. 2014-11-05 12:26:03 -08:00
Anders Hejlsberg 86f290fbb9 Initial parser support for destructuring patterns 2014-11-05 06:21:58 -08:00
Cyrus Najmabadi bea124b217 Simplify code. 2014-11-05 04:08:20 -08:00
Cyrus Najmabadi 1a1c9ace8a Add support for parsing computed property names. 2014-11-05 03:49:25 -08:00
Cyrus Najmabadi cb97682d83 Add the IPropertyNameSyntax.
This will help us introduce the ComputedPropertyName concept in the future.

Conflicts:
	src/services/syntax/syntaxNodes.concrete.generated.ts
2014-11-05 00:54:53 -08:00
Daniel Rosenwasser 39daf6cfbe Merge pull request #1060 from Microsoft/classifyKeywordsWithoutSyntacticClassifier
Classify keywords in type args in the absence of syntactic classification
2014-11-04 23:44:33 -08:00
Cyrus Najmabadi ae87b08e33 Add support for parsing shorthand property assignments. 2014-11-04 23:04:07 -08:00
CyrusNajmabadi fff8ef8b84 Merge pull request #1063 from Microsoft/nodeCleanup
Node cleanup
2014-11-04 23:03:13 -08:00
Cyrus Najmabadi 5952036e2c Remove unnecessary brand. 2014-11-04 22:43:11 -08:00
Cyrus Najmabadi 3753058874 Add an IAccessorSyntax interface. 2014-11-04 22:43:01 -08:00
Cyrus Najmabadi ba2bdc4124 Add missing brands to the syntax interfaces. 2014-11-04 22:42:43 -08:00
Cyrus Najmabadi a9a2fe501a Specialize computeData for arrays. 2014-11-04 22:41:13 -08:00
Cyrus Najmabadi 4cefe353f3 remove file. 2014-11-04 22:40:59 -08:00
Cyrus Najmabadi 35644b3d47 Move from an array of function pointers to actual methods.
Conflicts:
	src/services/syntax/syntaxGenerator.ts
2014-11-04 22:40:36 -08:00
Daniel Rosenwasser e119c575e8 Classify keywords in type args in the absence of syntactic classification. 2014-11-04 17:30:37 -08:00
Anders Hejlsberg d8080a0b46 Merge pull request #1035 from Microsoft/improvedTypeInference
Improved type inference (fixes #1011)
2014-11-04 17:09:31 -08:00
Sheetal Nandi 9d31631fd7 Test cases of function infering return type of functions
if f is a contextually typed function expression (section 4.9.3), the inferred return type is the union type (section 3.3.4) of the types of the return statement expressions in the function body, ignoring return statements with no expressions.
Otherwise, the inferred return type is the first of the types of the return statement expressions in the function body that is a supertype (section 3.8.3) of each of the others, ignoring return statements with no expressions. A compile-time error occurs if no return statement expression has a type that is a supertype of each of the others.
2014-11-04 16:40:56 -08:00
Sheetal Nandi 40af15c8ff Array literal produces union type if the it is not contextually typed 2014-11-04 15:58:44 -08:00
Sheetal Nandi a5cea935af Tests for contextual index signature of union type
Let S be the set of types in U that has a string index signature. If S is not empty, U has a string index signature of a union type of the types of the string index signatures from each type in S.
Let S be the set of types in U that has a numeric index signature. If S is not empty, U has a numeric index signature of a union type of the types of the numeric index signatures from each type in S.
2014-11-04 15:33:32 -08:00
Daniel Rosenwasser 1508350cb8 Merge branch 'master' into taggedTemplates
Conflicts:
	tests/baselines/reference/taggedTemplateStringsWithIncompatibleTypedTags.errors.txt
2014-11-04 15:24:21 -08:00
Daniel Rosenwasser 56027663bf Initial work on overload resolution with tagged templates.
Currently type argument inference breaks hard when the first parameter of a tag has a generic type.
2014-11-04 15:05:05 -08:00
Sheetal Nandi c4e632746e Fix the logic in getting the contextual signature of union type as per spec
Fixes #1054
2014-11-04 14:49:15 -08:00
Sheetal Nandi c5b4051f3a Test cases for contextual typing of union type members 2014-11-04 13:33:43 -08:00
Sheetal Nandi 1ca9273f49 Identity of union type 2014-11-04 13:18:50 -08:00
Sheetal Nandi 16fc7a22e2 Tests for union type literals
A union type literal is written as a sequence of types separated by vertical bars.
UnionType:
PrimaryOrUnionType   |   PrimaryType
A union typle literal references a union type.
When function or constructor types are included in union types they must be enclosed in parentheses
2014-11-04 13:18:47 -08:00
Sheetal Nandi 24ebc750c0 Tests for Conditional operator can generate union type 2014-11-04 13:18:43 -08:00
Sheetal Nandi b66cd9b0fc Results of || operation produces union type 2014-11-04 13:18:40 -08:00
Sheetal Nandi 49b5b5ab99 Tests for union of index signatures:
•	If each type in U has a string index signature, U has a string index signature of a union type of the types of the string index signatures from each type in U.
•	If each type in U has a numeric index signature, U has a numeric index signature of a union type of the types of the numeric index signatures from each type in U.
2014-11-04 13:18:37 -08:00
Sheetal Nandi c2b2c306af Tests for union of construct signatures
If each type in U has construct signatures and the sets of construct signatures are identical ignoring return types, U has the same set of construct signatures, but with return types that are unions of the return types of the respective construct signatures from each type in U.
2014-11-04 13:18:34 -08:00
Sheetal Nandi 2b8342bd79 Tests for union of call signatures
If each type in U has call signatures and the sets of call signatures are identical ignoring return types, U has the same set of call signatures, but with return types that are unions of the return types of the respective call signatures from each type in U.
2014-11-04 13:18:30 -08:00
Sheetal Nandi 357bd87612 Tests for union members:
If each type in U has a property P, U has a property P of a union type of the types of P from each type in U.
2014-11-04 13:18:27 -08:00
Sheetal Nandi 1f3653b32e Tests for assignment compatibility of union types
•	A union type U is assignable to a type T if each type in U is assignable to T.
•	A type T is assignable to a union type U if T is assignable to any type in U.
2014-11-04 13:18:24 -08:00
Sheetal Nandi 703cd5d4cf Tests for checking if type S is subtype of union type
T is a union type and S is a subtype of at least one constituent type of T
2014-11-04 13:18:20 -08:00