26 lines
1.1 KiB
Java
26 lines
1.1 KiB
Java
package com.discord.nullserializable;
|
|
|
|
import c.i.d.o;
|
|
import com.google.gson.Gson;
|
|
import com.google.gson.TypeAdapter;
|
|
import com.google.gson.reflect.TypeToken;
|
|
import d0.z.d.m;
|
|
import java.lang.reflect.ParameterizedType;
|
|
import java.lang.reflect.Type;
|
|
import java.util.Objects;
|
|
/* compiled from: NullSerializable.kt */
|
|
public final class NullSerializableTypeAdapterFactory implements o {
|
|
@Override // c.i.d.o
|
|
public <T> TypeAdapter<T> create(Gson gson, TypeToken<T> typeToken) {
|
|
m.checkNotNullParameter(gson, "gson");
|
|
m.checkNotNullParameter(typeToken, "type");
|
|
if (!NullSerializable.class.isAssignableFrom(typeToken.getRawType())) {
|
|
return null;
|
|
}
|
|
Type type = typeToken.getType();
|
|
Objects.requireNonNull(type, "null cannot be cast to non-null type java.lang.reflect.ParameterizedType");
|
|
TypeAdapter<T> h = gson.h(TypeToken.get(((ParameterizedType) type).getActualTypeArguments()[0]));
|
|
m.checkNotNullExpressionValue(h, "delegateTypeAdapter");
|
|
return new NullSerializableTypeAdapter(gson, h);
|
|
}
|
|
}
|