Files
rr3-apk/decompiled/sources/com/google/protobuf/MessageLiteToString.java
Daniel Elliott f9d20bb3fc Add decompiled APK source code (JADX)
- 28,932 files
- Full Java source code
- Smali files
- Resources

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-02-18 14:52:23 -08:00

149 lines
5.0 KiB
Java

package com.google.protobuf;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
/* loaded from: classes3.dex */
public final class MessageLiteToString {
private static final String BUILDER_LIST_SUFFIX = "OrBuilderList";
private static final String BYTES_SUFFIX = "Bytes";
private static final char[] INDENT_BUFFER;
private static final String LIST_SUFFIX = "List";
private static final String MAP_SUFFIX = "Map";
static {
char[] cArr = new char[80];
INDENT_BUFFER = cArr;
Arrays.fill(cArr, ' ');
}
private MessageLiteToString() {
}
public static String toString(MessageLite messageLite, String str) {
StringBuilder sb = new StringBuilder();
sb.append("# ");
sb.append(str);
reflectivePrintWithIndent(messageLite, sb, 0);
return sb.toString();
}
/* JADX WARN: Code restructure failed: missing block: B:66:0x016f, code lost:
if (r5.containsKey("get" + r9.substring(0, r9.length() - 5)) != false) goto L54;
*/
/*
Code decompiled incorrectly, please refer to instructions dump.
To view partially-correct add '--show-bad-code' argument
*/
private static void reflectivePrintWithIndent(com.google.protobuf.MessageLite r16, java.lang.StringBuilder r17, int r18) {
/*
Method dump skipped, instructions count: 507
To view this dump add '--comments-level debug' option
*/
throw new UnsupportedOperationException("Method not decompiled: com.google.protobuf.MessageLiteToString.reflectivePrintWithIndent(com.google.protobuf.MessageLite, java.lang.StringBuilder, int):void");
}
private static boolean isDefaultValue(Object obj) {
if (obj instanceof Boolean) {
return !((Boolean) obj).booleanValue();
}
if (obj instanceof Integer) {
return ((Integer) obj).intValue() == 0;
}
if (obj instanceof Float) {
return Float.floatToRawIntBits(((Float) obj).floatValue()) == 0;
}
if (obj instanceof Double) {
return Double.doubleToRawLongBits(((Double) obj).doubleValue()) == 0;
}
if (obj instanceof String) {
return obj.equals("");
}
if (obj instanceof ByteString) {
return obj.equals(ByteString.EMPTY);
}
return obj instanceof MessageLite ? obj == ((MessageLite) obj).getDefaultInstanceForType() : (obj instanceof java.lang.Enum) && ((java.lang.Enum) obj).ordinal() == 0;
}
public static void printField(StringBuilder sb, int i, String str, Object obj) {
if (obj instanceof List) {
Iterator it = ((List) obj).iterator();
while (it.hasNext()) {
printField(sb, i, str, it.next());
}
return;
}
if (obj instanceof Map) {
Iterator it2 = ((Map) obj).entrySet().iterator();
while (it2.hasNext()) {
printField(sb, i, str, (Map.Entry) it2.next());
}
return;
}
sb.append('\n');
indent(i, sb);
sb.append(pascalCaseToSnakeCase(str));
if (obj instanceof String) {
sb.append(": \"");
sb.append(TextFormatEscaper.escapeText((String) obj));
sb.append('\"');
return;
}
if (obj instanceof ByteString) {
sb.append(": \"");
sb.append(TextFormatEscaper.escapeBytes((ByteString) obj));
sb.append('\"');
return;
}
if (obj instanceof GeneratedMessageLite) {
sb.append(" {");
reflectivePrintWithIndent((GeneratedMessageLite) obj, sb, i + 2);
sb.append("\n");
indent(i, sb);
sb.append("}");
return;
}
if (obj instanceof Map.Entry) {
sb.append(" {");
Map.Entry entry = (Map.Entry) obj;
int i2 = i + 2;
printField(sb, i2, "key", entry.getKey());
printField(sb, i2, "value", entry.getValue());
sb.append("\n");
indent(i, sb);
sb.append("}");
return;
}
sb.append(": ");
sb.append(obj);
}
private static void indent(int i, StringBuilder sb) {
while (i > 0) {
char[] cArr = INDENT_BUFFER;
int length = i > cArr.length ? cArr.length : i;
sb.append(cArr, 0, length);
i -= length;
}
}
private static String pascalCaseToSnakeCase(String str) {
if (str.isEmpty()) {
return str;
}
StringBuilder sb = new StringBuilder();
sb.append(Character.toLowerCase(str.charAt(0)));
for (int i = 1; i < str.length(); i++) {
char charAt = str.charAt(i);
if (Character.isUpperCase(charAt)) {
sb.append("_");
}
sb.append(Character.toLowerCase(charAt));
}
return sb.toString();
}
}