1168 Commits

Author SHA1 Message Date
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
Ben Gruver
a8d9abfc24 Move the value type constants from EncodedValue to a new ValueType class 2012-10-15 21:38:53 -07:00
Ben Gruver
bf95959ae4 Move ExceptionWithContext to Util module 2012-10-15 20:23:01 -07:00
Ben Gruver
70aa787967 Make ReferenceType constants all caps 2012-10-15 20:06:15 -07:00
Ben Gruver
5581141868 Make ReferenceType constants static final, not just static 2012-10-15 20:05:24 -07:00
Ben Gruver
8daecd0246 Add some missing nullness attributes 2012-10-14 23:30:03 -07:00
Ben Gruver
9581b16739 Delete some old and/or half-baked javadoc from DexBackedField 2012-10-14 23:19:11 -07:00
Ben Gruver
be799799ff First commit of DexBacked implementations, for reading an existing dex file.
This is still a work in progress.
2012-10-14 22:57:57 -07:00
Ben Gruver
e2f00f0eba Add immutable implementations
Immutable implementations for all interfaces defined so far
2012-10-14 22:57:26 -07:00
Ben Gruver
c05d8d40e0 Add initial set of interfaces for dexlib2
This isn't everything that will be needed, but it's a good start
2012-10-14 22:56:56 -07:00
Ben Gruver
cc15feab69 Add AbstractListIterator and ImmutableListConverter classes to util module 2012-10-14 22:50:03 -07:00
Ben Gruver
f7ab3f9ade Add new module for dexlib2 2012-10-14 22:15:56 -07:00
Ben Gruver
03a89d0ac1 Fix the javadoc for ClassDataItem.getParentType 2012-10-11 20:00:15 -07:00
Ben Gruver
1176b75123 Add support for new virtual table generation
This adds support for a fix in dalvik that changes the way
virtual tables are generated.

This new logic can be turned on with the -K option. This option
will be removed once the new functionality can be tied to a released
api level, at which point, it will be triggered when using an
appropriate api level with the -a option.
2012-10-11 19:59:49 -07:00
Ben Gruver
ff05a416c5 Add the new StrictMath inlines 2012-10-08 21:12:21 -07:00
Ben Gruver
92a9aa2aa5 Minor cleanup of synthetic access related stuff 2012-10-08 19:18:06 -07:00
Ben Gruver
9a12fbef99 Fix an issue related to synthetic access methods in an unexpected format 2012-10-08 19:17:08 -07:00
Ben Gruver
b3ed2aa7d3 Prevent newline normalization on windows for smali tests 2012-10-06 16:51:47 -07:00
Ben Gruver
f4dd5319e9 Removed deleted argument from InitializeClassPath javadoc 2012-10-06 13:56:21 -07:00
Ben Gruver
671e5c7ea5 Revert "Fix newline issue for smali tests on Windows"
This reverts commit 097b40531b24f197436b4b1f51d586332cfe1fda.
2012-10-06 12:42:09 -07:00
Ben Gruver
598dcde6c9 Fix a deodex issue when merging an unresolved array type 2012-10-04 20:38:18 -07:00
Ben Gruver
60bb8c675c Simply the generic-ity around Instruction, OffsetInstruction and InstructionMethodItem 2012-09-25 20:18:42 -07:00
Ben Gruver
d317a0679d Print verbose errors in the tree walker 2012-09-25 19:56:35 -07:00
Ben Gruver
a59fe7e523 Change how the parent is determined for AnnotationDirectoryItem and ClassDataItem 2012-09-25 19:52:04 -07:00
Ben Gruver
097b40531b Fix newline issue for smali tests on Windows 2012-09-24 21:03:28 -07:00
Ben Gruver
a8be1b4c80 Fix NullPointerException if source file is not set in lexer 2012-09-24 18:22:02 -07:00