1480 Commits

Author SHA1 Message Date
Ben Gruver
ddc7c35e1c Add support for annotation element references
This adds support for both find usages and "go to definition"
functionality on an annotation element.
2015-03-15 14:55:57 -07:00
Ben Gruver
44a0c9091f Implement PsiAnnotationMethod in SmaliMethod 2015-03-14 12:34:04 -07:00
Ben Gruver
87f3e0dc7b Add support for finding field usages 2015-03-12 20:59:29 -07:00
Ben Gruver
6c99c3e111 Exclude nameless fields from SmaliClass.getFields()
Fields with a null or blank name tend to cause problems, so we'll just
exclude them until they have a name.
2015-03-12 20:59:02 -07:00
Ben Gruver
37d1612e2f Add find usages support for methods 2015-03-12 20:16:25 -07:00
Ben Gruver
fd373aedb7 Refactor out a FindUsagesTest base test class 2015-03-11 22:58:42 -07:00
Ben Gruver
809b934012 Simplify SmaliFindUsagesProvider by extending JavaFindUsagesProvider
The Java version does exactly what we want in most cases
2015-03-11 22:58:19 -07:00
Ben Gruver
b945b043ab Add tests for finding class usages 2015-03-11 22:58:17 -07:00
Ben Gruver
694fb7ca90 Add initial support for finding class usages in smali code 2015-03-11 22:28:46 -07:00
Ben Gruver
343ec04252 Associate the smali icon with the SmaliClass object
This ensures that the icon is shown next to the class in the project view
2015-03-06 20:00:16 -08:00
Ben Gruver
698b799e4f Improve error recovery when missing an .end sparse-switch 2015-03-06 19:32:21 -08:00
Ben Gruver
3abee993db Improve error recovery when missing an .end packed-switch 2015-03-06 19:27:46 -08:00
Ben Gruver
da28228d69 Improve error recovery when missing an .end array-data 2015-03-06 19:17:28 -08:00
Ben Gruver
f06f4312b4 Improve the error recovery for the local debug directive 2015-03-05 23:52:01 -08:00
Ben Gruver
87be840208 Improve the error recovery for parameter directives 2015-03-05 23:06:13 -08:00
Ben Gruver
bdbb235c6f Improve error recovery for missing .. tokens 2015-03-05 21:22:12 -08:00
Ben Gruver
765f8d8a7d Remove obsolete TODOs in the grammar 2015-03-05 20:19:13 -08:00
Ben Gruver
1c0611fe17 Remove the smalidea iml file
It can be generated with the gradle IDEA plugin now
2015-03-04 22:37:28 -08:00
Ben Gruver
0f49330183 Refactor how PARAM_LIST is parsed 2015-03-04 22:25:51 -08:00
Ben Gruver
c5cf51ac69 Fix up the gradle build 2015-03-04 20:58:22 -08:00
Ben Gruver
8c1d8ddef2 Merge branch 'master' into smalidea3 2015-03-04 20:58:14 -08:00
Ben Gruver
06d108d791 Refactor how the PARAM_LIST_OR_ID thing is parsed
This gets rids of the empty placeholder tokens, which cause errors
in IDEA's built-in lexer support code
2015-03-04 20:56:53 -08:00
Ben Gruver
ff7172c68d Improve error recovery of colons in various places 2015-03-04 20:56:53 -08:00
Ben Gruver
16c154b96e Improve error recovery for commas 2015-03-04 20:56:53 -08:00
Ben Gruver
0f597ae106 Add better error recovery for open/close braces 2015-03-04 20:56:53 -08:00
Ben Gruver
d7cd293904 Refactor open and close braces into the register_list/register_range rules 2015-03-04 20:56:53 -08:00
Ben Gruver
21d509aa6c Add better error recovery for the type_descriptor rule 2015-03-04 20:56:53 -08:00
Ben Gruver
62958a7091 Improve some error recovery around open/close parens in method prototypes 2015-03-04 20:56:49 -08:00
Ben Gruver
f70084bdfe Use [^] for the lexer's catch-all rule
[^] matches the entire character set, while . doesn't match new lines, etc.
2015-03-04 00:16:46 -08:00
Ben Gruver
e7f1549573 Merge pull request #28 from victorkp/master
Update doedexerant makefile
2015-03-03 18:10:16 -08:00
Ben Gruver
6a56d9a9e9 Merge pull request #29 from yirkha/master
Fix for Dalvik VM crash on parameter annotations
2015-03-03 18:08:44 -08:00
Ben Gruver
ea4074fdcc Don't try to test for reserved file names
Instead, we'll just check os.name
2015-03-01 22:42:48 -08:00
Ben Gruver
c19627e2d3 Enable parallel gradle execution by default 2015-03-01 22:35:30 -08:00
Ben Gruver
f0c481a7a1 Use single-quotes in build.gradle files when double-quotes aren't needed 2015-03-01 22:30:33 -08:00
Ben Gruver
3279a8cd4b Simplify how the accessorTest is built and run 2015-03-01 22:30:33 -08:00
Ben Gruver
57bd527d43 Use the antlr plugin for gradle 2015-03-01 20:31:10 -08:00
Ben Gruver
0f6f00a325 Use the jflex plugin for gradle 2015-03-01 20:30:09 -08:00
Ben Gruver
900ad6ea87 Use the proguard plugin for gradle 2015-03-01 19:51:34 -08:00
Ben Gruver
b3f933d27a Upgrade to gradle 2.3 2015-03-01 19:23:56 -08:00
Ben Gruver
59e56fb0dd Add IDEA project files to .gitignore 2015-03-01 19:14:27 -08:00
Ben Gruver
1d3d657b7f Improve error recovery of arrow parsing 2015-02-26 09:41:55 -08:00
Ben Gruver
18ff2d8368 Fix SmaliMethodReference.getReturnType() on missing return type 2015-02-26 09:37:49 -08:00
Ben Gruver
bcc0d5fa64 Improve error handling for missing reference_type_descriptor 2015-02-26 09:37:16 -08:00
Ben Gruver
a0149307bd Fix some nullability problems in SmaliMethodReference 2015-02-26 09:04:01 -08:00
Ben Gruver
24b1063e50 Improve parsing error recovery for the end method directive 2015-02-26 08:58:37 -08:00
Ben Gruver
f35c18489b Improve error handling for subannotation parsing 2015-02-21 14:02:54 -08:00
Ben Gruver
4640cc9c5b Improve error handling for literal parsing 2015-02-21 14:02:12 -08:00
Ben Gruver
251d6073b9 Improve error handling for annotation element parsing 2015-02-21 12:43:13 -08:00
Ben Gruver
1325537f8a Improve the error handling of annotation parsing 2015-02-21 12:23:38 -08:00
Ben Gruver
cbde720efa Improve the parsing of a field type 2015-02-20 20:54:31 -08:00