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
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
Ben Gruver
01f8c7dc7b
Improve how the field annotations/end field thing is parsed
2015-02-20 20:03:45 -08:00
Ben Gruver
d5b748f4f5
Minor improvement to how the colon is parsed for a field declaration
2015-02-20 19:04:44 -08:00
Ben Gruver
dd4e572d0b
Ensure there's always a member name element for a field
2015-02-19 20:03:59 -08:00
Ben Gruver
7d0a6c3854
Get rid of recoverWithMarker
...
Instead, we can just do a mark() before calling recover. herp-a-derp.
2015-02-19 20:01:18 -08:00
Ben Gruver
3505b35057
Merge the empty modifier list with the access list
2015-02-18 20:04:58 -08:00
Ben Gruver
92352fa44c
Convert SmaliClassStatement into a stub
2015-02-18 19:55:42 -08:00
Ben Gruver
eb1d98f063
Add a deserializeNullableString utility method to the base stub class
2015-02-16 13:03:08 -08:00
Ben Gruver
9423a7d7d0
Start improving the error resistance of field declarations
2015-02-16 12:57:49 -08:00
Ben Gruver
70693ff6bb
Add new LightCodeInsightParsingTestCase
...
This is based on IDEA's ParsingTestCase, but extending
LightCodeInsightFixtureTestCase, in order to provide
more functionality
2015-02-16 12:37:06 -08:00
Ben Gruver
f47973006b
Split out a separate class access list, to improve parsing
2015-02-16 10:45:26 -08:00
Ben Gruver
ea04d22ffd
Don't try to analyze methods with errors
2015-02-15 14:11:40 -08:00
Ben Gruver
7f6afa6a25
Move the return type to the MethodPrototype stub
2015-02-15 14:09:05 -08:00
Ben Gruver
6a1d56f0f0
Replace some usages of getParent() with getStubOrPsiParent()
2015-02-15 13:15:19 -08:00
Ben Gruver
e0aff4bda5
Move some implementation from SmaliBaseReferenceList to its implementors
2015-02-15 13:05:52 -08:00
Ben Gruver
6a520231e7
Implement an empty throws list
2015-02-15 12:08:03 -08:00
Ben Gruver
c623d94ff0
Fix how the PsiType is created for a SmaliMethodParam stub
2015-02-15 10:41:24 -08:00
Ben Gruver
16dde79e58
Add an isStatic() helper for SmaliMethod
2015-02-15 10:41:24 -08:00
Ben Gruver
d733304122
Make sure we always get a method prototype and method param list
2015-02-14 20:29:05 -08:00
Ben Gruver
aa06a4c782
Improve parsing of an invalid SmaliMethod with no .end method
...
This ensures that we still generate a SmaliMethod in this case, instead
of erroring out when not matching the END_METHOD_DIRECTIVE and aborting
the main SmaliMethod mark.
2015-02-14 18:09:29 -08:00
Ben Gruver
4a9e7df53e
Fix some warnings in the debugger code
2015-02-08 16:15:26 -08:00
Ben Gruver
6649a75532
Add some required runReadAction wrappers in SmaliCodeFragmentFactory
2015-02-01 20:16:39 -08:00
Ben Gruver
e6da8cd564
Massage the tries before using them for method analysis
2015-02-01 20:14:37 -08:00
Ben Gruver
78bd9c29a9
Improve error handling around method parameter lists
2015-01-31 10:27:09 -08:00
Ben Gruver
3b7332192b
Improve error handling for single-token productions
2015-01-30 18:46:11 -08:00
Ben Gruver
7e6f050bac
Refactor how errors are handled throughout the parser
2015-01-27 19:28:36 -08:00
Ben Gruver
a06ac49b6b
Fix the array data SmalideaMethod test
2015-01-27 19:27:48 -08:00
Ben Gruver
0a5f278d5f
Start adding better support for invalid classes/methods
...
This tweaks the nullability of various methods/parameters, and ensures
they are accessed appropriately
2015-01-25 18:36:54 -08:00
Ben Gruver
a227c0b142
Add and fix the InvalidClassDirective test
2015-01-25 14:02:29 -08:00
Ben Gruver
2d39ef6337
Add and fix a parser test for a blank file
2015-01-25 14:02:25 -08:00
Ben Gruver
a5efca6fe6
Add support for evaluating pNN style registers
2015-01-22 09:42:48 -08:00
Ben Gruver
0a2debe4e6
Add support for the payload instructions while calculating offsets
2015-01-21 09:32:01 -08:00
Ben Gruver
a7f77ff8d0
Add support for array-data
2015-01-21 09:32:01 -08:00
Ben Gruver
0dd228064d
Add support for sparse/packed switch instructions
2015-01-21 09:32:01 -08:00
Ben Gruver
9b97cfdf48
Implement try blocks in SmalideaMethod
2015-01-21 09:32:01 -08:00
Ben Gruver
762bf07e35
Add tests for the dexlib2 adapters
2015-01-21 09:32:01 -08:00
Ben Gruver
4645cc437d
Implement parsing for escaped strings
2015-01-21 09:32:01 -08:00
Ben Gruver
1570315fcf
Implement advanced/multi resolve for SmaliClassTypeElement
2015-01-21 09:32:01 -08:00
Ben Gruver
a28e8f2363
Add a CodeFragmentFactory to allow evaluation of arbitrary registers
2015-01-21 09:32:01 -08:00