Class UnitHandlingMapCodec<A>

java.lang.Object
com.mojang.serialization.CompressorHolder
com.mojang.serialization.MapCodec<A>
com.kneelawk.codextra.api.codec.UnitHandlingMapCodec<A>
Type Parameters:
A - the result type.
All Implemented Interfaces:
com.mojang.serialization.Compressable, com.mojang.serialization.Keyable, com.mojang.serialization.MapDecoder<A>, com.mojang.serialization.MapEncoder<A>

public class UnitHandlingMapCodec<A> extends com.mojang.serialization.MapCodec<A>
A MapCodec that handles missing keys and treats them like units (empty maps).
  • Nested Class Summary

    Nested classes/interfaces inherited from class com.mojang.serialization.MapCodec

    com.mojang.serialization.MapCodec.MapCodecCodec<A>, com.mojang.serialization.MapCodec.ResultFunction<A>

    Nested classes/interfaces inherited from interface com.mojang.serialization.MapDecoder

    com.mojang.serialization.MapDecoder.Implementation<A>

    Nested classes/interfaces inherited from interface com.mojang.serialization.MapEncoder

    com.mojang.serialization.MapEncoder.Implementation<A>
  • Constructor Summary

    Constructors
    Constructor
    Description
    UnitHandlingMapCodec(String name, com.mojang.serialization.Codec<A> codec)
    Creates a new UnitHandlingMapCodec.
  • Method Summary

    Modifier and Type
    Method
    Description
    <T> com.mojang.serialization.DataResult<A>
    decode(com.mojang.serialization.DynamicOps<T> ops, com.mojang.serialization.MapLike<T> input)
     
    <T> com.mojang.serialization.RecordBuilder<T>
    encode(A input, com.mojang.serialization.DynamicOps<T> ops, com.mojang.serialization.RecordBuilder<T> prefix)
     
    <T> Stream<T>
    keys(com.mojang.serialization.DynamicOps<T> ops)
     

    Methods inherited from class com.mojang.serialization.MapCodec

    assumeMapUnsafe, codec, dependent, deprecated, fieldOf, flatXmap, forGetter, mapResult, of, of, orElse, orElse, orElse, orElseGet, orElseGet, orElseGet, recursive, setPartial, stable, unit, unit, validate, withLifecycle, xmap

    Methods inherited from class com.mojang.serialization.CompressorHolder

    compressor

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface com.mojang.serialization.MapDecoder

    ap, compressedDecode, compressor, decoder, flatMap, map

    Methods inherited from interface com.mojang.serialization.MapEncoder

    comap, compressedBuilder, compressor, encoder, flatComap
  • Constructor Details

    • UnitHandlingMapCodec

      public UnitHandlingMapCodec(String name, com.mojang.serialization.Codec<A> codec)
      Creates a new UnitHandlingMapCodec.
      Parameters:
      name - the field name the codec value is in.
      codec - the codec to wrap.
  • Method Details

    • keys

      public <T> Stream<T> keys(com.mojang.serialization.DynamicOps<T> ops)
      Specified by:
      keys in interface com.mojang.serialization.Keyable
      Specified by:
      keys in class com.mojang.serialization.MapCodec<A>
    • decode

      public <T> com.mojang.serialization.DataResult<A> decode(com.mojang.serialization.DynamicOps<T> ops, com.mojang.serialization.MapLike<T> input)
    • encode

      public <T> com.mojang.serialization.RecordBuilder<T> encode(A input, com.mojang.serialization.DynamicOps<T> ops, com.mojang.serialization.RecordBuilder<T> prefix)