Files
rr3-apk/decompiled-community/sources/com/google/protobuf/Protobuf.java
Daniel Elliott c080f0d97f Add Discord community version (64-bit only)
- Added realracing3-community.apk (71.57 MB)
- Removed 32-bit support (armeabi-v7a)
- Only includes arm64-v8a libraries
- Decompiled source code included
- Added README-community.md with analysis
2026-02-18 15:48:36 -08:00

77 lines
2.4 KiB
Java

package com.google.protobuf;
import java.io.IOException;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;
/* loaded from: classes3.dex */
public final class Protobuf {
private static final Protobuf INSTANCE = new Protobuf();
private final ConcurrentMap<Class<?>, Schema> schemaCache = new ConcurrentHashMap();
private final SchemaFactory schemaFactory = new ManifestSchemaFactory();
public static Protobuf getInstance() {
return INSTANCE;
}
public <T> void writeTo(T t, Writer writer) throws IOException {
schemaFor((Protobuf) t).writeTo(t, writer);
}
public <T> void mergeFrom(T t, Reader reader) throws IOException {
mergeFrom(t, reader, ExtensionRegistryLite.getEmptyRegistry());
}
public <T> void mergeFrom(T t, Reader reader, ExtensionRegistryLite extensionRegistryLite) throws IOException {
schemaFor((Protobuf) t).mergeFrom(t, reader, extensionRegistryLite);
}
public <T> void makeImmutable(T t) {
schemaFor((Protobuf) t).makeImmutable(t);
}
public <T> boolean isInitialized(T t) {
return schemaFor((Protobuf) t).isInitialized(t);
}
public <T> Schema schemaFor(Class<T> cls) {
Internal.checkNotNull(cls, "messageType");
Schema schema = this.schemaCache.get(cls);
if (schema != null) {
return schema;
}
Schema createSchema = this.schemaFactory.createSchema(cls);
Schema registerSchema = registerSchema(cls, createSchema);
return registerSchema != null ? registerSchema : createSchema;
}
public <T> Schema schemaFor(T t) {
return schemaFor((Class) t.getClass());
}
public Schema registerSchema(Class<?> cls, Schema schema) {
Internal.checkNotNull(cls, "messageType");
Internal.checkNotNull(schema, "schema");
return this.schemaCache.putIfAbsent(cls, schema);
}
public Schema registerSchemaOverride(Class<?> cls, Schema schema) {
Internal.checkNotNull(cls, "messageType");
Internal.checkNotNull(schema, "schema");
return this.schemaCache.put(cls, schema);
}
private Protobuf() {
}
public int getTotalSchemaSize() {
int i = 0;
for (Schema schema : this.schemaCache.values()) {
if (schema instanceof MessageSchema) {
i += ((MessageSchema) schema).getSchemaSize();
}
}
return i;
}
}