alexandroid/decompiled/jadx/sources/com/google/protobuf/TextFormatEscaper.java
KaKi87 a47fad5135 📦 Add decompiled Alexa 2.2.730155.0 (jadx, apktool, Hermes strings)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-07 00:04:16 +01:00

105 lines
3.6 KiB
Java

package com.google.protobuf;
import com.amazon.rtcsc.service.deviceconfiguration.util.DeviceConfigConstants;
/* compiled from: r8-map-id-b9432e0f623b4a4bff4ba50a8a24c4aafad2c1e11092747b9fb5e6a22af5a940 */
/* loaded from: classes8.dex */
final class TextFormatEscaper {
/* compiled from: r8-map-id-b9432e0f623b4a4bff4ba50a8a24c4aafad2c1e11092747b9fb5e6a22af5a940 */
public interface ByteSequence {
byte byteAt(int i);
int size();
}
private TextFormatEscaper() {
}
public static String escapeBytes(ByteSequence byteSequence) {
StringBuilder sb = new StringBuilder(byteSequence.size());
for (int i = 0; i < byteSequence.size(); i++) {
byte byteAt = byteSequence.byteAt(i);
if (byteAt == 34) {
sb.append("\\\"");
} else if (byteAt == 39) {
sb.append("\\'");
} else if (byteAt != 92) {
switch (byteAt) {
case 7:
sb.append("\\a");
break;
case 8:
sb.append("\\b");
break;
case 9:
sb.append("\\t");
break;
case 10:
sb.append("\\n");
break;
case 11:
sb.append("\\v");
break;
case 12:
sb.append("\\f");
break;
case 13:
sb.append("\\r");
break;
default:
if (byteAt < 32 || byteAt > 126) {
sb.append('\\');
sb.append((char) (((byteAt >>> 6) & 3) + 48));
sb.append((char) (((byteAt >>> 3) & 7) + 48));
sb.append((char) ((byteAt & 7) + 48));
break;
} else {
sb.append((char) byteAt);
break;
}
break;
}
} else {
sb.append("\\\\");
}
}
return sb.toString();
}
public static String escapeDoubleQuotesAndBackslashes(String str) {
return str.replace("\\", "\\\\").replace(DeviceConfigConstants.DOUBLE_QUOTE, "\\\"");
}
public static String escapeText(String str) {
return escapeBytes(ByteString.copyFromUtf8(str));
}
public static String escapeBytes(final ByteString byteString) {
return escapeBytes(new ByteSequence() { // from class: com.google.protobuf.TextFormatEscaper.1
@Override // com.google.protobuf.TextFormatEscaper.ByteSequence
public byte byteAt(int i) {
return ByteString.this.byteAt(i);
}
@Override // com.google.protobuf.TextFormatEscaper.ByteSequence
public int size() {
return ByteString.this.size();
}
});
}
public static String escapeBytes(final byte[] bArr) {
return escapeBytes(new ByteSequence() { // from class: com.google.protobuf.TextFormatEscaper.2
@Override // com.google.protobuf.TextFormatEscaper.ByteSequence
public byte byteAt(int i) {
return bArr[i];
}
@Override // com.google.protobuf.TextFormatEscaper.ByteSequence
public int size() {
return bArr.length;
}
});
}
}