Ben Gruver
9c60ef2a10
Add support in dexlib2 for debug info
2012-10-26 22:23:20 -07:00
Ben Gruver
c307c1887d
Implement support in dexlib2 for payload instructions
2012-10-26 00:49:31 -07:00
Ben Gruver
68f69b899f
Rename DexReader.skipBytes to moveRelative, and add setOffset
2012-10-26 00:06:08 -07:00
Ben Gruver
2e34c4499c
Fix superclass and interfaces in DexBackedClassDef
2012-10-24 22:25:39 -07:00
Ben Gruver
4e3124206a
Improve how access flags are handled
2012-10-24 22:13:11 -07:00
Ben Gruver
7ccb5fcfec
Refactor annotations and encoded values in baksmali
2012-10-24 21:15:42 -07:00
Ben Gruver
ca21c1e890
Add a test for InstructionOffsetMap
2012-10-23 22:56:42 -07:00
Ben Gruver
d62490d669
Fix Preconditions.check3rcRegisterCount
2012-10-23 22:53:41 -07:00
Ben Gruver
e2f2c89ddc
Fix a multitude of format related issues with immutable instructions
2012-10-23 22:53:41 -07:00
Ben Gruver
0033480503
Fix the missing return type for method references
2012-10-23 22:53:41 -07:00
Ben Gruver
d23b567c2b
Remove some unneeded interfaces
2012-10-23 22:53:41 -07:00
Ben Gruver
3ad13f4fe3
Add InstructionOffsetMap utility class
...
This provides a convenient way to map back and forth between
instruction offsets and indexes within a method
2012-10-23 22:53:37 -07:00
Ben Gruver
ccc4c13ae6
Use code offsets rather than indexes for instructions
...
I had initially wanted to use instruction indexes at the dexlib level,
rather than the actual code unit offsets/addresses. But after additional
thought, I decided to stick with code units, and then provide a utility
for easily mapping between indexes/offsets (not implemented yet).
2012-10-23 20:01:18 -07:00
Ben Gruver
8b1508ee58
Start switching baksmali over to dexlib2
2012-10-21 23:17:56 -07:00
Ben Gruver
38d58eb4f4
Fix the format of ImmutableInstruction10x
2012-10-21 23:17:04 -07:00
Ben Gruver
c15f9c2fdf
Switch to guava for dexlib
2012-10-21 23:16:45 -07:00
Ben Gruver
ebc11d3216
Add zip file support in DexFileFactory
2012-10-21 22:14:18 -07:00
Ben Gruver
ec47cb62a8
Add DexFileFactory
2012-10-21 21:43:30 -07:00
Ben Gruver
58f5f0c417
Implement support for indexed items in DexBuffer
2012-10-21 21:43:16 -07:00
Ben Gruver
0f7b4c40f4
Fix the class data offset in DexBackedClassDef
2012-10-21 21:41:54 -07:00
Ben Gruver
3f2861b477
Return the specific DexBacked versions of methods and classes
2012-10-21 21:41:18 -07:00
Ben Gruver
0aeaeecb11
fix Precoditions.checkValueArg()
2012-10-21 21:40:42 -07:00
Ben Gruver
90a1ffeda1
Add "optional" uint, that allows -1 as a value
...
This is used for "optional" indexes, that have a "not present"
value of -1
2012-10-21 21:40:18 -07:00
Ben Gruver
198c33bc26
Add BareDexBuffer for testing DexBuffer
2012-10-21 21:27:23 -07:00
Ben Gruver
e593a563ae
Add utf8BytesWithUtf16LengthToString method to Utf8Utils
2012-10-21 21:19:43 -07:00
Ben Gruver
09e6d003cb
Use thread local storage for the temporary buffer in Utf8Utils
2012-10-21 21:19:43 -07:00
Ben Gruver
9f1d05eb44
Move Utf8Utils to util module, and split out StringUtils
2012-10-21 21:19:39 -07:00
Ben Gruver
ac7a94a295
Minor nullness attribute and whitespace tweaks
2012-10-21 14:29:52 -07:00
Ben Gruver
39d2c38685
Add tests for the various "sized" types in DexReader
2012-10-21 14:29:19 -07:00
Ben Gruver
25d385a441
General cleanup
2012-10-20 23:58:36 -07:00
Ben Gruver
380ca70a2c
Implement skipping for all variable sized lists
2012-10-20 23:36:23 -07:00
Ben Gruver
36e2ee2005
Rename DexFileBuffer and DexFileReader to DexBuffer and DexReader
2012-10-20 23:29:26 -07:00
Ben Gruver
06eb83505b
Add tests and related fixes for leb128 functionality in DexFileReader
2012-10-20 23:09:55 -07:00
Ben Gruver
e2db1542bb
Add tests and related fixes for DexFileBuffer
2012-10-20 22:58:07 -07:00
Ben Gruver
f8780edbec
Minor reordering of methods in DexFileBuffer
2012-10-20 22:56:41 -07:00
Ben Gruver
8405133a40
Add DexFile interface and implementations
2012-10-20 14:53:55 -07:00
Ben Gruver
dc9e5455bc
Rename DexFile to DexFileBuffer
2012-10-20 14:38:53 -07:00
Ben Gruver
a88239d92d
Implement the various primitive reading methods on DexFile and DexFileReader
2012-10-20 14:17:43 -07:00
Ben Gruver
779bf9bccb
Move DexFile and DexFileReader to the dexbacked package
2012-10-20 14:16:32 -07:00
Ben Gruver
5ec83fb0f0
Add DexBacked implementation of MethodImplementation
2012-10-19 21:07:37 -07:00
Ben Gruver
337dc0ea26
Move AlignmentUtils to Util library
2012-10-19 18:04:00 -07:00
Ben Gruver
63d8406703
Add DexBacked implementation of Method
2012-10-18 21:58:58 -07:00
Ben Gruver
f3e03c0a94
Add named offsets for field_id_item values
2012-10-18 20:08:14 -07:00
Ben Gruver
064d77c3ad
Implement reading instructions
2012-10-18 18:59:41 -07:00
Ben Gruver
d4866dd875
Change Opcode.getOpcodeByValue to accept an int
2012-10-17 18:34:38 -07:00
Ben Gruver
b5e40f2abd
Remove the expanded opcode stuff
2012-10-17 18:34:18 -07:00
Ben Gruver
7c71ad420d
Implement DexBacked encodeded values
2012-10-15 22:47:16 -07:00
Ben Gruver
e8665c7a91
Add string formatting functionality to ExceptionWithContext
2012-10-15 22:44:15 -07:00
Ben Gruver
3019737ed3
Make AnnotationEncodedValue implement BaseAnnotation
2012-10-15 22:19:42 -07:00
Ben Gruver
22eede870f
Change ImmutableList.convert to return an empty list rather than null
2012-10-15 22:13:19 -07:00