Commit Graph

1274 Commits

Author SHA1 Message Date
anna
a55b0fa17b lambda/method refs: more specific according to 15.12.2.5 - prefer private when private type is given/reference when reference type is given 2013-02-27 18:03:32 +01:00
anna
47c7983713 lambda: check more specific method based on lambda return types with wildcards 2013-02-27 18:03:31 +01:00
anna
c64013e004 lambda: check more specific method based on lambda return types 2013-02-27 16:07:30 +01:00
anna
6308a651a2 lambda/method refs: inference exception variables (initial) 2013-02-27 12:19:40 +01:00
anna
4bf90bf26d lambda: testdata 2013-02-26 21:20:52 +01:00
anna
e48f61bf4d method refs: test data to check enum/interface/annotation not accepted; isAcceptable checks on Array types 2013-02-26 20:38:07 +01:00
anna
2ceabcf7ba method refs: super::abstract method 2013-02-26 19:51:03 +01:00
anna
7333331a42 method refs: decline constructor refs on array ref with inapplicable substitutor 2013-02-26 19:51:02 +01:00
anna
23056b8d20 method refs: patch getClass return value in the same way it is done in PsiMethodCallExpression 2013-02-26 19:51:01 +01:00
peter
fa438eb3d7 IDEA-101570 Auto-Completing 'try' and 'finally' keywords does not honor next line brace placement 2013-02-26 17:19:19 +01:00
anna
456a49ce9f method refs: fix testdata according to new javac strategy 2013-02-26 16:30:12 +01:00
anna
a41b5c6f85 support method/constructor refs on array types 2013-02-26 16:30:11 +01:00
anna
96abac54cc method refs: treat boxed types as with anonymous 2013-02-26 16:30:10 +01:00
anna
ed8986937e method refs: compilation error when static method is accept through instance reference 2013-02-26 14:19:16 +01:00
anna
af83c60af8 constructor refs: forbid outer as implicit receiver in non-static inner class 2013-02-26 14:19:15 +01:00
anna
d20905d2d5 constructor refs: forbid default constructors for inner classes 2013-02-26 14:19:15 +01:00
anna
33a583584b do not apply substitutor twice (IDEA-101752) 2013-02-25 18:44:14 +01:00
anna
b562064e02 lambda: conditional inference updated 2013-02-25 18:44:13 +01:00
anna
a684c033a1 lambda: replace raw inference from lambda with Object when it doesn't matter (IDEA-101788) 2013-02-25 14:12:42 +01:00
peter
1e12d6d4fc apply start-matching case-insensitively whatever the completion matching option is 2013-02-22 17:07:06 +01:00
anna
25220f5f46 method refs: accept generic methods in functional interfaces testdata 2013-02-21 20:21:50 +01:00
anna
985efd2362 more specific method should be chosen before static access is checked (IDEA-101480) 2013-02-21 15:23:11 +01:00
anna
e869310a92 ambiguous method call: choose one method if both are from the same hierarchy as the actual problem is there (IDEA-101529) 2013-02-21 15:23:10 +01:00
anna
5c8e94689b update anchor to skip whitespaces (IDEA-93459) 2013-02-21 11:38:11 +01:00
anna
6edc546e65 lambda: void compatibility guess 2013-02-20 21:30:51 +01:00
anna
a82225975a lambda/method refs: check functional interface accessibility 2013-02-20 20:41:07 +01:00
anna
9634bb390e lambda: stop inference from lambda if return type retrieval leads to second lambda inference; do not cache types during this calculation 2013-02-20 20:41:06 +01:00
anna
def5e21e6a lambda: restore void-compatibility checks 2013-02-20 20:41:05 +01:00
anna
35c349430a graph inference: infer from non-eq type bound 2013-02-20 18:09:44 +01:00
anna
65eba117da graph inference: do not infer diamonds based on graph inference 2013-02-20 16:33:51 +01:00
anna
6ef43fb5d9 check erased types for first param applicability if method substitutor is raw 2013-02-20 14:26:28 +01:00
anna
533ca9ace4 SAM: skip allowed static methods as they are not supposed to be overridden (IDEA-101403) 2013-02-19 12:54:36 +01:00
anna
ec1fcb263f lambda: inference from formal params fixed (IDEA-101176) 2013-02-18 18:15:18 +01:00
anna
dbd2a5db98 EA-44003 - SOE: PsiResolveHelperImpl.inferBySubtypingConstraint 2013-02-18 18:15:17 +01:00
peter
5d885e7221 in completion usage recency, less is better 2013-02-18 15:25:22 +01:00
anna
43e079d97d skip inference from parent for diamond's search for constructor (IDEA-101166) 2013-02-18 11:31:58 +01:00
anna
99a14543f2 new inference: subtyping constraint (IDEA-101166) 2013-02-15 21:40:30 +01:00
anna
1bc365756b fix method hierarchy with default methods: mark method to implement if it abstract and overrides default method (IDEA-101167) 2013-02-15 18:36:24 +01:00
anna
52338427d5 inference from conditions (IDEA-101161) 2013-02-15 16:28:14 +01:00
anna
e120d0af1f do not check within bounds for super wildcards 2013-02-15 16:28:13 +01:00
anna
3b4e3818e6 lambda: correct inference for vararg place > params.len (IDEA-101169) 2013-02-15 14:00:03 +01:00
anna
38ce821958 method ref: accept non parameterized receivers (IDEA-101168) 2013-02-15 14:00:02 +01:00
anna
3de6d80c2e create constant from usage: set static/final before insert field in order to get correct anchor (IDEA-100867) 2013-02-14 21:15:36 +01:00
Roman Shevchenko
6910c2e3ab Test fixed 2013-02-14 20:15:42 +01:00
anna
7e6e59724e lambda: clear caches after usage; more testdata 2013-02-13 15:57:24 +01:00
anna
ac0f65d247 graph inference for the first arg 2013-02-13 12:20:33 +01:00
peter
8b63d897e2 don't always prefer common methods like Object#equals once they ever were chosen
choosing another method from a subclass now also affects all superclass methods statistics
2013-02-12 19:23:44 +01:00
anna
b0a04ac5d2 lambda: preserve partial substitutor data during substitute 2013-02-12 17:42:24 +01:00
anna
c4eaec6655 method refs: take into account super class substitutor 2013-02-12 17:42:22 +01:00
anna
d999759ebe generate hashCode: prevent conflicts with 'Arrays' name 2013-02-12 10:51:56 +01:00