From 1b2341341c5043d553df27a96fbb50384f73c56c Mon Sep 17 00:00:00 2001 From: Kirlif Date: Sun, 10 Nov 2024 18:02:24 +0100 Subject: [PATCH 1/2] [SMALI] Sort comments --- .../dex/smali/formatters/ClassComment.java | 25 +++++++++++++++---- .../dex/smali/formatters/MethodComment.java | 11 +++++++- 2 files changed, 30 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/reandroid/dex/smali/formatters/ClassComment.java b/src/main/java/com/reandroid/dex/smali/formatters/ClassComment.java index f969dabda..97d9a413f 100644 --- a/src/main/java/com/reandroid/dex/smali/formatters/ClassComment.java +++ b/src/main/java/com/reandroid/dex/smali/formatters/ClassComment.java @@ -20,6 +20,8 @@ import com.reandroid.dex.model.DexClassRepository; import com.reandroid.dex.smali.SmaliWriter; import com.reandroid.utils.ObjectsUtil; +import com.reandroid.utils.StringsUtil; +import com.reandroid.utils.collection.ArrayCollection; import java.io.IOException; import java.util.Iterator; @@ -41,14 +43,20 @@ public void writeComment(SmaliWriter writer, TypeKey typeKey) throws IOException if(dexClass == null || dexClass.isFinal()) { return; } + ArrayCollection arrayCollection = new ArrayCollection(); Iterator iterator = dexClass.getExtending(); while (iterator.hasNext()) { TypeKey key = iterator.next().getKey(); - writer.appendComment("extended-by: "); - writer.appendComment(key.getTypeName()); + String typeName = key.getTypeName(); + arrayCollection.add(typeName); + } + StringsUtil.toStringSort(arrayCollection); + Iterator iterator2 = arrayCollection.iterator(); + while (iterator2.hasNext()) { writer.newLine(); + writer.appendComment("extended-by: "); + writer.appendComment(iterator2.next()); } - } @Override public boolean equals(Object obj) { @@ -79,12 +87,19 @@ public void writeComment(SmaliWriter writer, TypeKey typeKey) throws IOException if(dexClass == null || !dexClass.isInterface()) { return; } + ArrayCollection arrayCollection = new ArrayCollection(); Iterator iterator = dexClass.getImplementations(); while (iterator.hasNext()) { TypeKey key = iterator.next().getKey(); - writer.appendComment("implemented-by: "); - writer.appendComment(key.getTypeName()); + String typeName = key.getTypeName(); + arrayCollection.add(typeName); + } + StringsUtil.toStringSort(arrayCollection); + Iterator iterator2 = arrayCollection.iterator(); + while (iterator2.hasNext()) { writer.newLine(); + writer.appendComment("implemented-by: "); + writer.appendComment(iterator2.next()); } } @Override diff --git a/src/main/java/com/reandroid/dex/smali/formatters/MethodComment.java b/src/main/java/com/reandroid/dex/smali/formatters/MethodComment.java index a17107279..8483232d8 100644 --- a/src/main/java/com/reandroid/dex/smali/formatters/MethodComment.java +++ b/src/main/java/com/reandroid/dex/smali/formatters/MethodComment.java @@ -20,6 +20,8 @@ import com.reandroid.dex.model.DexMethod; import com.reandroid.dex.smali.SmaliWriter; import com.reandroid.utils.ObjectsUtil; +import com.reandroid.utils.StringsUtil; +import com.reandroid.utils.collection.ArrayCollection; import com.reandroid.utils.collection.CollectionUtil; import java.io.IOException; @@ -81,12 +83,19 @@ public void writeComment(SmaliWriter writer, MethodKey methodKey) throws IOExcep if(dexMethod == null || dexMethod.isDirect() || dexMethod.getDexClass().isFinal()){ return; } + ArrayCollection arrayCollection = new ArrayCollection(); Iterator iterator = dexMethod.getOverriding(); while (iterator.hasNext()) { DexMethod method = iterator.next(); + String typeName = method.getKey().getDeclaring().getTypeName(); + arrayCollection.add(typeName); + } + StringsUtil.toStringSort(arrayCollection); + Iterator iterator2 = arrayCollection.iterator(); + while (iterator2.hasNext()) { writer.newLine(); writer.appendComment("implemented-by: "); - writer.appendComment(method.getKey().getDeclaring().getTypeName()); + writer.appendComment(iterator2.next()); } } @Override From 0d4a7a33dbc61062f53727e33f07c89e7e371c3a Mon Sep 17 00:00:00 2001 From: Kirlif Date: Sun, 10 Nov 2024 20:05:51 +0100 Subject: [PATCH 2/2] [SMALI] Sort comments --- .../java/com/reandroid/dex/smali/formatters/ClassComment.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/reandroid/dex/smali/formatters/ClassComment.java b/src/main/java/com/reandroid/dex/smali/formatters/ClassComment.java index 97d9a413f..b7c2df137 100644 --- a/src/main/java/com/reandroid/dex/smali/formatters/ClassComment.java +++ b/src/main/java/com/reandroid/dex/smali/formatters/ClassComment.java @@ -53,9 +53,9 @@ public void writeComment(SmaliWriter writer, TypeKey typeKey) throws IOException StringsUtil.toStringSort(arrayCollection); Iterator iterator2 = arrayCollection.iterator(); while (iterator2.hasNext()) { - writer.newLine(); writer.appendComment("extended-by: "); writer.appendComment(iterator2.next()); + writer.newLine(); } } @Override @@ -97,9 +97,9 @@ public void writeComment(SmaliWriter writer, TypeKey typeKey) throws IOException StringsUtil.toStringSort(arrayCollection); Iterator iterator2 = arrayCollection.iterator(); while (iterator2.hasNext()) { - writer.newLine(); writer.appendComment("implemented-by: "); writer.appendComment(iterator2.next()); + writer.newLine(); } } @Override