All Known Implementing Classes:
ArrayCodecResolver, EitherCodecResolver, EnumCodecResolver, OptionalCodecResolver, PairCodecResolver, PrimitiveCodecResolver, RecordCodecResolver, StandardCodecResolver, TagKeyCodecResolver

public interface CodecResolver
A general interface that all codec resolvers implement.
  • Method Summary

    Modifier and Type
    Method
    Description
    <T> @NotNull CodecHolder<T>
    resolveCodec(GenericClass<T> genericClass)
    Resolves a codec for the provided generic class.
    boolean
    supportsValue(GenericClass<?> genericClass)
    Is the generic class supported by this codec resolver?
  • Method Details

    • supportsValue

      boolean supportsValue(GenericClass<?> genericClass)
      Is the generic class supported by this codec resolver?
      Parameters:
      genericClass - The generic class.
      Returns:
      Is the generic class supported?
    • resolveCodec

      @NotNull <T> @NotNull CodecHolder<T> resolveCodec(GenericClass<T> genericClass)
      Resolves a codec for the provided generic class.

      Called only if supportsValue(GenericClass) returned true.

      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.