java.lang.Object
dev.scsupercraft.mc.libraries.corelib.serialization.resolver.basic.RecordCodecResolver
All Implemented Interfaces:
CodecResolver

public final class RecordCodecResolver extends Object implements CodecResolver
An advanced codec resolver that should work for all records, as long as the CodecHelper can also resolve codecs for the record components.
  • Constructor Details

  • Method Details

    • supportsValue

      public boolean supportsValue(GenericClass<?> genericClass)
      Description copied from interface: CodecResolver
      Is the generic class supported by this codec resolver?
      Specified by:
      supportsValue in interface CodecResolver
      Parameters:
      genericClass - The generic class.
      Returns:
      Is the generic class supported?
    • resolveCodec

      @NotNull public <T> @NotNull CodecHolder<T> resolveCodec(GenericClass<T> genericClass)
      Description copied from interface: CodecResolver
      Resolves a codec for the provided generic class.

      Called only if CodecResolver.supportsValue(GenericClass) returned true.

      Specified by:
      resolveCodec in interface CodecResolver
      Type Parameters:
      T - The type of class contained in the generic class.
      Parameters:
      genericClass - The generic class.
      Returns:
      A codec holder containing the codecs for the provided generic class.