32 Commits

Author SHA1 Message Date
Ben Gruver
2fd677db88 Tweak how array descriptors are parsed
This is needed to allow smalidea to have an outer array type element to
represent the type as a whole, and an inner class type element for the
actual element type
2015-01-21 09:32:00 -08:00
Ben Gruver
b4b9c6c387 Get qualifiedName from stub in when possible in SmaliClass 2015-01-21 09:32:00 -08:00
Ben Gruver
9a1db48dc5 Flesh out SmaliAnnotation and related classes/methods 2015-01-21 09:32:00 -08:00
Ben Gruver
6d81598612 Implement SmaliClass.getName()
This is the remaining piece to allow references to smali types from java
code
2015-01-21 09:32:00 -08:00
Ben Gruver
bc200776bc Implement extends and implements list
This also includes the relevant implementations in SmaliClass
2015-01-21 09:32:00 -08:00
Ben Gruver
31aad6b5cd Implement SmaliClassType and SmaliClassTypeElement
This implements enough plumbing to get basic class references working
from within smali files.
2015-01-21 09:32:00 -08:00
Ben Gruver
f563e1d367 Add support for primitives and arrays in the NameUtils conversion methods 2015-01-21 09:32:00 -08:00
Ben Gruver
d91aabc5f9 Implement initial SmaliExtendsList and SmaliImplementsList 2015-01-21 09:32:00 -08:00
Ben Gruver
3bd51ea4e4 Implement SmaliAnnotation.getQualifiedName() and related tests 2015-01-21 09:32:00 -08:00
Ben Gruver
010b0fb998 Add PsiModifierList implementation
Also implement PsiModifierList-related methods in SmaliClass
2015-01-21 09:32:00 -08:00
Ben Gruver
056b1a6556 Add PsiClassOwner implementation to SmaliFile
Also add tests for implemented methods in SmaliFile and SmaliClass
2015-01-21 09:32:00 -08:00
Ben Gruver
649239bcce Add an initial stub implementation of PsiAnnotation 2015-01-21 09:32:00 -08:00
Ben Gruver
db1b08807f Implement PsiClass.getQualifiedName() 2015-01-21 09:32:00 -08:00
Ben Gruver
7106c64346 Add an initial stub implementation of PsiClass 2015-01-21 09:32:00 -08:00
Ben Gruver
be0914bc81 Implement initial SmaliCatchStatement and SmaliCatchAllStatement 2015-01-21 09:32:00 -08:00
Ben Gruver
4e834f8323 Implement initial SmaliVoidElementType 2015-01-21 09:32:00 -08:00
Ben Gruver
a85dc013f9 Implement initial SmaliArrayTypeElement 2015-01-21 09:32:00 -08:00
Ben Gruver
d05c6f0f2b Implement initial SmaliClassTypeElement 2015-01-21 09:32:00 -08:00
Ben Gruver
da998c529e Initially implement large chunk of remaining Psi types 2015-01-21 09:32:00 -08:00
Ben Gruver
a3d2e1581e Implement initial SmaliPrimitiveType 2015-01-21 09:32:00 -08:00
Ben Gruver
04ca67d3b2 Implement initial top level statements 2015-01-21 09:32:00 -08:00
Ben Gruver
7389cfbb7e Implement initial SmaliLiteral 2015-01-21 09:32:00 -08:00
Ben Gruver
65eecc51b2 Implement initial SmaliAnnotation 2015-01-21 09:32:00 -08:00
Ben Gruver
4a75c556bb Implement initial SmaliField and SmaliMethod 2015-01-21 09:32:00 -08:00
Ben Gruver
c9c5cd9d5b Implement initial SmaliClass 2015-01-21 09:32:00 -08:00
Ben Gruver
4be4005d61 Improve error recovery in the parser 2015-01-21 09:32:00 -08:00
Ben Gruver
076c60644f Implement a basic parser, generating a flat Psi tree 2015-01-21 09:32:00 -08:00
Ben Gruver
d11a702eea Add a color preference page for smali syntax highlighting 2015-01-21 09:32:00 -08:00
Ben Gruver
ae3fa54699 Implement initial token highlighting 2015-01-21 09:32:00 -08:00
Ben Gruver
bbc11c79e5 Add lexer implementation based on existing smali lexer 2015-01-21 09:32:00 -08:00
Ben Gruver
a669ed1f9d Register a new smali file type 2015-01-21 09:32:00 -08:00
Ben Gruver
5c14179d8b Create smalidea module 2015-01-21 09:31:59 -08:00