mirror of
https://github.com/revanced/smali.git
synced 2025-05-05 17:14:25 +02:00
StringTemplate does't seem to want to iterate over the byte array returned by the iterator, but it works if you return an object and access the byte array as an attribute
git-svn-id: https://smali.googlecode.com/svn/trunk@363 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
This commit is contained in:
parent
9596186473
commit
416b72fc74
@ -45,8 +45,8 @@ public class ArrayDataMethodItem extends InstructionFormatMethodItem<ArrayDataPs
|
|||||||
return instruction.getElementWidth();
|
return instruction.getElementWidth();
|
||||||
}
|
}
|
||||||
|
|
||||||
public Iterator<byte[]> getValues() {
|
public Iterator<ByteArray> getValues() {
|
||||||
return new Iterator<byte[]>() {
|
return new Iterator<ByteArray>() {
|
||||||
int position;
|
int position;
|
||||||
final Iterator<ArrayDataPseudoInstruction.ArrayElement> iterator = instruction.getElements();
|
final Iterator<ArrayDataPseudoInstruction.ArrayElement> iterator = instruction.getElements();
|
||||||
|
|
||||||
@ -54,15 +54,23 @@ public class ArrayDataMethodItem extends InstructionFormatMethodItem<ArrayDataPs
|
|||||||
return iterator.hasNext();
|
return iterator.hasNext();
|
||||||
}
|
}
|
||||||
|
|
||||||
public byte[] next() {
|
public ByteArray next() {
|
||||||
ArrayDataPseudoInstruction.ArrayElement element = iterator.next();
|
ArrayDataPseudoInstruction.ArrayElement element = iterator.next();
|
||||||
byte[] array = new byte[element.elementWidth];
|
byte[] array = new byte[element.elementWidth];
|
||||||
System.arraycopy(element.buffer, element.bufferIndex, array, 0, element.elementWidth);
|
System.arraycopy(element.buffer, element.bufferIndex, array, 0, element.elementWidth);
|
||||||
return array;
|
return new ByteArray(array);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void remove() {
|
public void remove() {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static class ByteArray
|
||||||
|
{
|
||||||
|
public final byte[] ByteArray;
|
||||||
|
public ByteArray(byte[] byteArray) {
|
||||||
|
this.ByteArray = byteArray;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -262,7 +262,7 @@ Format51l(Instruction) ::=
|
|||||||
ArrayData(Instruction) ::=
|
ArrayData(Instruction) ::=
|
||||||
<<
|
<<
|
||||||
.array-data <Instruction.ElementWidth>
|
.array-data <Instruction.ElementWidth>
|
||||||
<Instruction.Values: {<it; format="unsigned",separator=" ">}; separator="\n">
|
<Instruction.Values: {<it.ByteArray; format="unsigned",separator=" ">}; separator="\n">
|
||||||
.end array-data
|
.end array-data
|
||||||
>>
|
>>
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user