Commit Graph

2144 Commits

Author SHA1 Message Date
stsypanov
9375d66dd9 Improve Method's param count evaluation
GitOrigin-RevId: 108ee2c599935b2dac9cfc4df93acb8896578ca6
2019-12-30 18:33:36 +00:00
Tagir Valeev
43e64e1c56 Patterns resolve: stop at switch label; filter by name before doing control flow analysis when possible (IDEA-229846)
Review ID: IDEA-CR-56992

GitOrigin-RevId: 4264da45582f5d38e3b5630184d8ab762f30575b
2019-12-28 12:05:19 +00:00
Tagir Valeev
586bd6da28 JavaPsiRecordUtil#isCanonicalConstructor -> isExplicitCanonicalConstructor
GitOrigin-RevId: a3c68d4956c23a726118f6eb8b22e45881d84e09
2019-12-28 06:40:55 +00:00
nik
f0ebb6464b [java] annotate some String parameters with @NonNls
GitOrigin-RevId: e4569a958993e3ae40822bb62ab7b151da91c4a3
2019-12-27 10:04:40 +00:00
Tagir Valeev
3fc9bf9589 PsiUtil#isJvmLocalVariable
GitOrigin-RevId: 39baed9559ca58e00c405eec5fe57be1f3c6384f
2019-12-27 09:01:34 +00:00
Tagir Valeev
8114438d79 Display error if patterns aren't available.
GitOrigin-RevId: 683cd35a245f2473a68097e4ea151a3db8c533f1
2019-12-27 07:33:29 +00:00
Tagir Valeev
384846b4c4 jdk.14.preview.language.level.description: add patterns and text blocks
GitOrigin-RevId: 35eb1a7940ab1b170086083ea0a73565b678ceb3
2019-12-27 07:33:29 +00:00
Tagir Valeev
0df312338d IDEA-229846 Resolve for pattern matching (except switch handling)
GitOrigin-RevId: b8addebac00f681641d5cef1089fa6f7d2d668a7
2019-12-27 07:33:29 +00:00
Roman.Ivanov
b4e17d29bd IDEA-227613: parser and PSI for PsiPatternVariable
GitOrigin-RevId: 824878102c981d1b20ae149f80ef17942f0895f5
2019-12-26 08:04:34 +00:00
Tagir Valeev
20b13c9122 Records: report canonical constructor parameter name mismatch (IDEA-228460)
GitOrigin-RevId: d2c5c75f2a9066bd949ad503ad6fcbd71c594d18
2019-12-26 06:03:46 +00:00
Tagir Valeev
042c0bff53 Create records from new (IDEA-229796)
GitOrigin-RevId: 38ffe8494d90cb7d5d83c5cfcc923259aac1e05f
2019-12-25 07:43:46 +00:00
Tagir Valeev
00a6252088 Record icon; new class kind record; create record from usage, etc.
GitOrigin-RevId: eee1b443c86e635894ad757647d045998fff37cf
2019-12-25 07:43:46 +00:00
Roman.Ivanov
15b9692ac3 PsiRecordComponentStub: add isVararg to stub
GitOrigin-RevId: e85fab86d276d9b48e7b7bb88e5413dd695c56b7
2019-12-24 08:41:04 +00:00
Roman.Ivanov
158abe45b8 create compact constructor light parameter list, make parameter list optional
GitOrigin-RevId: a8f67df9897d8adfece17d6d376c40776f25476d
2019-12-24 08:41:04 +00:00
Tagir Valeev
e1f4bf5bcf Accept mismatch in varargness of record and canonical constructor
GitOrigin-RevId: d377578d8cd5ef67e5d2241f956792e887aa80b2
2019-12-24 08:41:04 +00:00
Tagir Valeev
39a9039c38 Proper checks for missing implementation of abstract method in records (IDEA-228460, IDEA-CR-56772)
GitOrigin-RevId: 1be11a80e1721116959dc24cb79c9feb4065f4ef
2019-12-19 06:33:37 +00:00
Sergey Ignatov
3b0b8cc7fc more dynamic bundles
GitOrigin-RevId: 25c80a7d911c36dbee7395c1110306dc421ac222
2019-12-18 19:31:34 +00:00
Tagir Valeev
14c82dcf4f JavaPsiRecordUtil: isCanonicalConstructor fixed for record w/o components; testdata fixed (IDEA-CR-56742)
GitOrigin-RevId: a179e7ddf958f6f7c76e72187a0044d2da6cc936
2019-12-18 12:02:04 +00:00
Tagir Valeev
53986a2bd7 Error highlighting for records: compact constructors (8.10.5) IDEA-228460
GitOrigin-RevId: d2ffbe570a06768989e48bf88eaf503a847574d4
2019-12-18 11:37:51 +00:00
Tagir Valeev
662cb5deae Handle compact constructor in regular class: quick-fix to add () (IDEA-228460)
GitOrigin-RevId: c019e19e8023c0209f6e5ed54f8a486689bb0e0a
2019-12-18 11:37:51 +00:00
Tagir Valeev
f29de7206f Error highlighting for records: check that fields are initialized in canonical constructor (8.10.4) IDEA-228460
GitOrigin-RevId: 6b1cc0b27cc34a6b1f975316a667d606d6dd6a7b
2019-12-18 10:32:28 +00:00
Tagir Valeev
811b8fca50 Error highlighting for records: record constructors (except compact) (8.10.4) IDEA-228460
Also ChangeModifierIntention: do not suggest to change canonical constructor access modifier
Also AddExceptionToThrowsFix: do not suggest to add throws to canonical constructor

GitOrigin-RevId: 43c21af324c35a6b65633ab8cc3882bb972f993f
2019-12-18 10:32:28 +00:00
Tagir Valeev
028a78cae3 Error highlighting for records: record bodies, record members (8.10.2, 8.10.3) IDEA-228460
Also ChangeModifierIntention: do not suggest to change component accessor access modifier
Also AddExceptionToThrowsFix: do not suggest to add throws to component accessor

GitOrigin-RevId: 6ce3d43f5160c075a2c66ac01af895a1212cc9a3
2019-12-18 06:32:21 +00:00
Tagir Valeev
d887f8b142 AnnotationTargetUtil#RECORD_COMPONENT_TARGETS: added PARAMETER
Current spec draft [1] does not mention parameter. However, according to mailing list discussion [2] it's an error in the spec

[1] http://cr.openjdk.java.net/~gbierman/jep359/jep359-20191125/specs/records-jls.html#jls-9.7.4
[2] http://mail.openjdk.java.net/pipermail/amber-spec-experts/2019-December/001882.html

GitOrigin-RevId: a02c405cb595f1974c1773f2d4691ad6238b691b
2019-12-18 06:32:21 +00:00
Tagir Valeev
3ff5ba7461 Records error highlighting: well-formedness; components (part of IDEA-228460)
GitOrigin-RevId: f72bba51738ed7d89dbbebf43311a049c23d317f
2019-12-17 11:02:18 +00:00
Anna Kozlova
2d26e930c1 java resolve: cache has overloads to avoid re-computation for each of overloads
IDEA-229130

GitOrigin-RevId: b093fc6bab686e28818baba842c1ea8ecad0fe29
2019-12-16 15:01:24 +00:00
Artemiy Sartakov
2036bcb557 TextBlockMigrationInspection: split text block lines by line breaks, exclude blank last line from indent calculation
GitOrigin-RevId: 5e99b3126a5803e5d4a85b8c5d30d5dde79c8e76
2019-12-16 07:11:50 +00:00
Anna Kozlova
6bc8c913e5 unused import
GitOrigin-RevId: ee7b6228023004216db3bdc68d92edacc6edb914
2019-12-15 19:05:18 +00:00
Tagir Valeev
87bf62325d PsiSubstitutorHelper -> PsiSubstitutorFactory (IDEA-CR-55883)
GitOrigin-RevId: cc9768350c85b45f85a2fad3b264e585299ec5e8
2019-12-12 06:33:19 +00:00
Roman.Ivanov
380e67643e Make PsiRecordComponent not PsiJvmMember
GitOrigin-RevId: fc440ac621ecd35c868e6753dbb86bd2684cd297
2019-12-12 03:32:48 +00:00
Peter Gromov
dd109bb6f7 AnnotationUtil: don't return annotations from static super methods
don't go into prevented endless recursion when inferring contracts for a static method that calls its own override

GitOrigin-RevId: c596cd104fa05b4b5a9ebc64eff012814d0a399d
2019-12-11 17:31:39 +00:00
Tagir Valeev
c7d40e719b TypeConversionUtil#isAssignableFromPrimitiveWrapper: support serializable, comparable and intersection types
GitOrigin-RevId: 6c79001d1ec6c8197778cfe66e8679328ffe2b35
2019-12-11 09:07:22 +00:00
Roman.Ivanov
987491a69d IDEA-227613 : Implement basic parser & PSI for patterns in instanceof
GitOrigin-RevId: 5b149907a239f1d0acdeacbdff95249d6473639d
2019-12-11 05:14:21 +00:00
Anna.Kozlova
405d87f397 java resolve: less cache prevention; cleanup
IDEA-CR-56378

GitOrigin-RevId: f8cf7958948a08ddbb622f26105eb25292624fc2
2019-12-10 20:03:19 +00:00
Peter Gromov
a9556757d8 make PsiMethod.findSuperMethods work by JLS, without EJB/GWT (IDEA-228768)
GitOrigin-RevId: c86b12304429a1b7e5ca00a673f6325028a0b38a
2019-12-10 13:07:16 +00:00
Anna.Kozlova
ffdd8f8b91 java resolve: less cache prevention for new expressions
GitOrigin-RevId: 00f8ddc3c1ecd7c0254226afb73bdecc3633cc73
2019-12-10 09:32:25 +00:00
Anna.Kozlova
ef79971fb0 java resolve: no cache prevention for standalone expressions/no overloads cases
GitOrigin-RevId: ee3f4f3aa61d3ee14157a1edfacc9b9ca04b9508
2019-12-10 07:33:29 +00:00
Anna.Kozlova
3b5e3d0a28 formatting
GitOrigin-RevId: 91fb6e54c08b0413a43d28a3f8ba520b1e1a92e4
2019-12-10 07:33:29 +00:00
Artemiy Sartakov
a824548d9d TextBlockMigrationInspection: fixed indent calculation for concatenations with blank lines
GitOrigin-RevId: ec7b0b827a1d1f6aa95692c80e805429cf73858d
2019-12-10 06:42:18 +00:00
Anna.Kozlova
3916a0cfb2 CCE
GitOrigin-RevId: d9d7204b5a429cb2a3b70cd3b2d54137707cb250
2019-12-09 08:01:39 +00:00
Roman.Ivanov
ad856611b8 Revert "make PsiRecordComponent field"
GitOrigin-RevId: 488e7160504ac626a2172a953bc5dba5a0572fd0
2019-12-06 04:15:21 +00:00
Roman.Ivanov
e808c494c4 make PsiRecordComponent field
GitOrigin-RevId: 78a2c1cde5027a2338f0ede97aea1130445c57da
2019-12-05 12:02:01 +00:00
Anna.Kozlova
a670ae9396 java 14 preview
GitOrigin-RevId: f7dbfdf88ea31a1113e44b71fb92ec5ef1d1c21d
2019-12-05 11:04:51 +00:00
Yuriy Artamonov
4954832e92 @NotNull for PsiElementVisitor visit methods
GitOrigin-RevId: 6a67f22e668694096a3cbf31dfdc5b1d8f37bba3
2019-12-05 09:07:56 +00:00
Anna Kozlova
0580ad0043 don't prohibit caching if overload resolution is impossible (IDEA-221094)
exactly one candidate is available

GitOrigin-RevId: 4c6d5b4eef79fb60af46d8d9db9f7e49adb2f8c4
2019-12-04 19:31:48 +00:00
Roman.Ivanov
e54a1a8262 Add getContainingClass() to PsiRecordHeader
GitOrigin-RevId: 6d5f271ef28bb48b5a7ffa583bca5c3628ead0b1
2019-12-04 09:38:15 +00:00
Roman.Ivanov
74f10408aa Add isRecord to PsiClass and stubs
GitOrigin-RevId: 70a1f02a278611c7e39f1687bc6a9a2a8c5d07cb
2019-12-04 07:35:25 +00:00
Roman.Ivanov
68ae3123f1 IDEA-223110: Records PSI & stubs
GitOrigin-RevId: 5dc94265512b324a243b17ab71f108a4ab55ddef
2019-12-03 06:33:02 +00:00
Roman.Ivanov
a8f8c1b16e IDEA-223110: basic PSI/parser for records
GitOrigin-RevId: cab1467a63937c9ee64bc483b8b3ae912645842b
2019-12-03 06:33:02 +00:00
Anna.Kozlova
7fa4b88c52 introduce java 14 language with switch expressions; keep in java 13_preview for a while
GitOrigin-RevId: 853b412041de303b2178f77ded357f5bb1d38aab
2019-12-02 08:32:35 +00:00