CLASS net/minecraft/class_5699 net/minecraft/util/dynamic/Codecs COMMENT A few extensions for {@link Codec} or {@link DynamicOps}. COMMENT COMMENT

It has a few methods to create checkers for {@code Codec.flatXmap} to add COMMENT extra value validation to encoding and decoding. See the implementation of COMMENT {@link #nonEmptyList(Codec)}. FIELD field_33441 NONNEGATIVE_INT Lcom/mojang/serialization/Codec; FIELD field_33442 POSITIVE_INT Lcom/mojang/serialization/Codec; FIELD field_34387 POSITIVE_FLOAT Lcom/mojang/serialization/Codec; METHOD method_33817 xor (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; COMMENT Returns an exclusive-or codec for {@link Either} instances. COMMENT COMMENT

This returned codec fails if both the {@code first} and {@code second} codecs can COMMENT decode the input, while DFU's {@link com.mojang.serialization.codecs.EitherCodec} COMMENT will always take the first decoded result when it is available. COMMENT COMMENT

Otherwise, this behaves the same as the either codec. COMMENT COMMENT @param the first type COMMENT @param the second type COMMENT @return the xor codec for the two codecs COMMENT @see Codec#either(Codec, Codec) COMMENT @see com.mojang.serialization.codecs.EitherCodec ARG 0 first COMMENT the first codec ARG 1 second COMMENT the second codec METHOD method_36240 createNonEmptyListChecker ()Ljava/util/function/Function; METHOD method_36241 rangedInt (IILjava/util/function/Function;)Lcom/mojang/serialization/Codec; ARG 0 min ARG 1 max ARG 2 messageFactory METHOD method_36242 (Ljava/lang/Integer;)Ljava/lang/String; ARG 0 v METHOD method_36243 createIntRangeChecker (Ljava/lang/Number;Ljava/lang/Number;Ljava/util/function/Function;)Ljava/util/function/Function; ARG 0 min ARG 1 max ARG 2 messageFactory METHOD method_36244 (Ljava/lang/Number;Ljava/lang/Number;Ljava/util/function/Function;Ljava/lang/Number;)Lcom/mojang/serialization/DataResult; ARG 3 value METHOD method_36245 (Ljava/util/List;)Lcom/mojang/serialization/DataResult; ARG 0 list METHOD method_36246 (Ljava/lang/Integer;)Ljava/lang/String; ARG 0 v METHOD method_36973 nonEmptyList (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; ARG 0 originalCodec METHOD method_37928 rangedFloat (FFLjava/util/function/Function;)Lcom/mojang/serialization/Codec; ARG 0 min ARG 1 max ARG 2 messageFactory METHOD method_37931 createCodecForPairObject (Lcom/mojang/serialization/Codec;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/BiFunction;Ljava/util/function/Function;Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; ARG 0 codec ARG 1 leftFieldName ARG 2 rightFieldName ARG 3 combineFunction ARG 4 leftFunction ARG 5 rightFunction METHOD method_37932 (Ljava/lang/Float;)Ljava/lang/String; ARG 0 v METHOD method_37933 (Ljava/lang/Number;Ljava/lang/Number;Ljava/util/function/Function;Ljava/lang/Number;)Lcom/mojang/serialization/DataResult; ARG 3 value METHOD method_37940 createFloatRangeChecker (Ljava/lang/Number;Ljava/lang/Number;Ljava/util/function/Function;)Ljava/util/function/Function; ARG 0 min ARG 1 max ARG 2 messageFactory METHOD method_39028 orElsePartial (Ljava/lang/Object;)Lcom/mojang/serialization/Codec$ResultFunction; METHOD method_39240 createLazy (Ljava/util/function/Supplier;)Lcom/mojang/serialization/Codec; ARG 0 supplier METHOD method_39504 withLifecycle (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; ARG 0 originalCodec METHOD method_39509 (Ljava/util/function/IntFunction;Ljava/lang/Integer;)Lcom/mojang/serialization/DataResult; ARG 1 rawId METHOD method_39510 (Ljava/util/function/ToIntFunction;ILjava/lang/Object;)Lcom/mojang/serialization/DataResult; ARG 2 element METHOD method_39511 rawIdChecked (Ljava/util/function/ToIntFunction;Ljava/util/function/IntFunction;I)Lcom/mojang/serialization/Codec; ARG 0 elementToRawId ARG 1 rawIdToElement ARG 2 errorRawId METHOD method_39512 orCompressed (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; ARG 0 uncompressedCodec ARG 1 compressedCodec METHOD method_40109 (Lnet/minecraft/class_6885;)Lcom/mojang/serialization/DataResult; ARG 0 entries METHOD method_40110 createContextRetrievalCodec (Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; ARG 0 retriever METHOD method_40111 (Ljava/util/function/Function;Ljava/util/Collection;)Lcom/mojang/serialization/DataResult; ARG 1 collection METHOD method_40112 createNonEmptyEntryListChecker ()Ljava/util/function/Function; METHOD method_40113 nonEmptyEntryList (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; ARG 0 originalCodec METHOD method_40114 createEqualTypeChecker (Ljava/util/function/Function;)Ljava/util/function/Function; ARG 0 typeGetter CLASS 1 METHOD apply (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Lcom/mojang/serialization/DataResult;)Lcom/mojang/serialization/DataResult; ARG 1 ops ARG 2 input ARG 3 result METHOD coApply (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Lcom/mojang/serialization/DataResult;)Lcom/mojang/serialization/DataResult; ARG 1 ops ARG 2 input ARG 3 result CLASS 2 METHOD decode (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; ARG 1 ops ARG 2 input METHOD encode (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; ARG 1 input ARG 2 ops ARG 3 prefix CLASS 3 METHOD apply (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Lcom/mojang/serialization/DataResult;)Lcom/mojang/serialization/DataResult; ARG 1 ops ARG 2 input ARG 3 result METHOD coApply (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Lcom/mojang/serialization/DataResult;)Lcom/mojang/serialization/DataResult; ARG 1 ops ARG 2 input ARG 3 result METHOD method_39515 (Lcom/mojang/serialization/DataResult;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; ARG 2 pair CLASS class_5839 Xor COMMENT An xor codec that only permits exactly one of the two data choices to be COMMENT present. COMMENT COMMENT @see Codecs#xor(Codec, Codec) COMMENT @see com.mojang.serialization.codecs.EitherCodec FIELD field_28868 first Lcom/mojang/serialization/Codec; FIELD field_28869 second Lcom/mojang/serialization/Codec; METHOD (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;)V ARG 1 first ARG 2 second METHOD decode (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; ARG 1 ops ARG 2 input METHOD encode (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; ARG 1 input ARG 2 ops ARG 3 prefix METHOD equals (Ljava/lang/Object;)Z ARG 1 o METHOD method_33821 (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; ARG 0 pair METHOD method_33822 (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; ARG 3 right METHOD method_33823 (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; ARG 0 pair METHOD method_33824 (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; ARG 3 left CLASS class_6495 Either FIELD field_34388 first Lcom/mojang/serialization/Codec; FIELD field_34389 second Lcom/mojang/serialization/Codec; METHOD (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;)V ARG 1 first ARG 2 second METHOD decode (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; ARG 1 ops ARG 2 input METHOD encode (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; ARG 1 input ARG 2 ops ARG 3 prefix METHOD equals (Ljava/lang/Object;)Z ARG 1 o METHOD method_37946 (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; ARG 0 pair METHOD method_37948 (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; ARG 3 right METHOD method_37949 (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; ARG 0 pair METHOD method_37950 (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; ARG 3 left CLASS class_6739 Lazy METHOD decode (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; ARG 1 ops ARG 2 input METHOD encode (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; ARG 1 input ARG 2 ops ARG 3 prefix CLASS class_6866 ContextRetrievalCodec METHOD (Ljava/util/function/Function;)V ARG 1 retriever METHOD decode (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; ARG 1 ops ARG 2 input METHOD encode (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/RecordBuilder;)Lcom/mojang/serialization/RecordBuilder; ARG 1 input ARG 2 ops ARG 3 prefix METHOD keys (Lcom/mojang/serialization/DynamicOps;)Ljava/util/stream/Stream; ARG 1 ops