alexandroid/decompiled/jadx/sources/com/google/common/base/MoreObjects.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

234 lines
8.1 KiB
Java

package com.google.common.base;
import com.google.common.annotations.GwtCompatible;
import com.google.errorprone.annotations.CanIgnoreReturnValue;
import java.lang.reflect.Array;
import java.util.Arrays;
import java.util.Collection;
import java.util.Map;
import kotlinx.serialization.json.internal.AbstractJsonLexerKt;
import rx.Single$$ExternalSyntheticBUOutline0;
/* compiled from: r8-map-id-b9432e0f623b4a4bff4ba50a8a24c4aafad2c1e11092747b9fb5e6a22af5a940 */
@GwtCompatible
/* loaded from: classes8.dex */
public final class MoreObjects {
private MoreObjects() {
}
public static <T> T firstNonNull(T t, T t2) {
if (t != null) {
return t;
}
if (t2 != null) {
return t2;
}
Single$$ExternalSyntheticBUOutline0.m$1("Both parameters are null");
return null;
}
public static ToStringHelper toStringHelper(Object obj) {
return new ToStringHelper(obj.getClass().getSimpleName());
}
/* compiled from: r8-map-id-b9432e0f623b4a4bff4ba50a8a24c4aafad2c1e11092747b9fb5e6a22af5a940 */
public static final class ToStringHelper {
private final String className;
private final ValueHolder holderHead;
private ValueHolder holderTail;
private boolean omitEmptyValues;
private boolean omitNullValues;
/* compiled from: r8-map-id-b9432e0f623b4a4bff4ba50a8a24c4aafad2c1e11092747b9fb5e6a22af5a940 */
public static final class UnconditionalValueHolder extends ValueHolder {
private UnconditionalValueHolder() {
}
}
/* compiled from: r8-map-id-b9432e0f623b4a4bff4ba50a8a24c4aafad2c1e11092747b9fb5e6a22af5a940 */
public static class ValueHolder {
String name;
ValueHolder next;
Object value;
}
private ToStringHelper(String str) {
ValueHolder valueHolder = new ValueHolder();
this.holderHead = valueHolder;
this.holderTail = valueHolder;
this.omitNullValues = false;
this.omitEmptyValues = false;
this.className = (String) Preconditions.checkNotNull(str);
}
@CanIgnoreReturnValue
private ToStringHelper addHolder(String str, Object obj) {
ValueHolder addHolder = addHolder();
addHolder.value = obj;
addHolder.name = (String) Preconditions.checkNotNull(str);
return this;
}
@CanIgnoreReturnValue
private ToStringHelper addUnconditionalHolder(String str, Object obj) {
UnconditionalValueHolder addUnconditionalHolder = addUnconditionalHolder();
addUnconditionalHolder.value = obj;
addUnconditionalHolder.name = (String) Preconditions.checkNotNull(str);
return this;
}
private static boolean isEmpty(Object obj) {
return obj instanceof CharSequence ? ((CharSequence) obj).length() == 0 : obj instanceof Collection ? ((Collection) obj).isEmpty() : obj instanceof Map ? ((Map) obj).isEmpty() : obj instanceof Optional ? !((Optional) obj).isPresent() : obj.getClass().isArray() && Array.getLength(obj) == 0;
}
@CanIgnoreReturnValue
public ToStringHelper add(String str, boolean z) {
return addUnconditionalHolder(str, String.valueOf(z));
}
@CanIgnoreReturnValue
public ToStringHelper addValue(boolean z) {
return addUnconditionalHolder(String.valueOf(z));
}
@CanIgnoreReturnValue
public ToStringHelper omitEmptyValues() {
this.omitEmptyValues = true;
return this;
}
@CanIgnoreReturnValue
public ToStringHelper omitNullValues() {
this.omitNullValues = true;
return this;
}
public String toString() {
boolean z = this.omitNullValues;
boolean z2 = this.omitEmptyValues;
StringBuilder sb = new StringBuilder(32);
sb.append(this.className);
sb.append(AbstractJsonLexerKt.BEGIN_OBJ);
String str = "";
for (ValueHolder valueHolder = this.holderHead.next; valueHolder != null; valueHolder = valueHolder.next) {
Object obj = valueHolder.value;
if (!(valueHolder instanceof UnconditionalValueHolder)) {
if (obj == null) {
if (z) {
}
} else if (z2 && isEmpty(obj)) {
}
}
sb.append(str);
String str2 = valueHolder.name;
if (str2 != null) {
sb.append(str2);
sb.append('=');
}
if (obj == null || !obj.getClass().isArray()) {
sb.append(obj);
} else {
String deepToString = Arrays.deepToString(new Object[]{obj});
sb.append((CharSequence) deepToString, 1, deepToString.length() - 1);
}
str = ", ";
}
sb.append(AbstractJsonLexerKt.END_OBJ);
return sb.toString();
}
@CanIgnoreReturnValue
public ToStringHelper add(String str, Object obj) {
return addHolder(str, obj);
}
@CanIgnoreReturnValue
public ToStringHelper addValue(Object obj) {
return addHolder(obj);
}
@CanIgnoreReturnValue
public ToStringHelper add(String str, char c) {
return addUnconditionalHolder(str, String.valueOf(c));
}
@CanIgnoreReturnValue
public ToStringHelper addValue(char c) {
return addUnconditionalHolder(String.valueOf(c));
}
@CanIgnoreReturnValue
public ToStringHelper add(String str, double d) {
return addUnconditionalHolder(str, String.valueOf(d));
}
@CanIgnoreReturnValue
public ToStringHelper addValue(double d) {
return addUnconditionalHolder(String.valueOf(d));
}
@CanIgnoreReturnValue
public ToStringHelper add(String str, float f) {
return addUnconditionalHolder(str, String.valueOf(f));
}
@CanIgnoreReturnValue
public ToStringHelper addValue(float f) {
return addUnconditionalHolder(String.valueOf(f));
}
@CanIgnoreReturnValue
public ToStringHelper add(String str, int i) {
return addUnconditionalHolder(str, String.valueOf(i));
}
@CanIgnoreReturnValue
public ToStringHelper addValue(int i) {
return addUnconditionalHolder(String.valueOf(i));
}
@CanIgnoreReturnValue
public ToStringHelper add(String str, long j) {
return addUnconditionalHolder(str, String.valueOf(j));
}
@CanIgnoreReturnValue
public ToStringHelper addValue(long j) {
return addUnconditionalHolder(String.valueOf(j));
}
@CanIgnoreReturnValue
private ToStringHelper addHolder(Object obj) {
addHolder().value = obj;
return this;
}
@CanIgnoreReturnValue
private ToStringHelper addUnconditionalHolder(Object obj) {
addUnconditionalHolder().value = obj;
return this;
}
private ValueHolder addHolder() {
ValueHolder valueHolder = new ValueHolder();
this.holderTail.next = valueHolder;
this.holderTail = valueHolder;
return valueHolder;
}
private UnconditionalValueHolder addUnconditionalHolder() {
UnconditionalValueHolder unconditionalValueHolder = new UnconditionalValueHolder();
this.holderTail.next = unconditionalValueHolder;
this.holderTail = unconditionalValueHolder;
return unconditionalValueHolder;
}
}
public static ToStringHelper toStringHelper(Class<?> cls) {
return new ToStringHelper(cls.getSimpleName());
}
public static ToStringHelper toStringHelper(String str) {
return new ToStringHelper(str);
}
}