code: private static <T> PojoSerializerSnapshot<T> buildSnapshot(
  			Class<T> pojoType,
  			LinkedHashMap<Class<?>, Integer> registeredSubclassesToTags,
  			TypeSerializer<?>[] registeredSubclassSerializers,
  			Field[] fields,
  			TypeSerializer<?>[] fieldSerializers,
  			Map<Class<?>, TypeSerializer<?>> nonRegisteredSubclassSerializerCache) {
  
  		final LinkedHashMap<Class<?>, TypeSerializer<?>> subclassRegistry = new LinkedHashMap<>(registeredSubclassesToTags.size());
  
  		for (Map.Entry<Class<?>, Integer> entry : registeredSubclassesToTags.entrySet()) {
  			subclassRegistry.put(entry.getKey(), registeredSubclassSerializers[entry.getValue()]);
  		}
  
  		return new PojoSerializerSnapshot<>(
  				pojoType,
  				fields,
  				fieldSerializers,
  				subclassRegistry,
  				nonRegisteredSubclassSerializerCache);
  	}
docs: Build and return a snapshot of the serializer's parameters and currently cached serializers.