SetResult enum

Пакет: com.hypixel.hytale.server.core.universe.world.chunk.section.palette

Файл: com/hypixel/hytale/server/core/universe/world/chunk/section/palette/AbstractSectionPalette.java

Поля (1)

МодификаторыТипИмя
ADDED_OR_REMOVED, CHANGED, UNCHANGED, REQUIRES_PROMOTE

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.universe.world.chunk.section.palette;

class="kw">import com.hypixel.hytale.function.consumer.BiIntConsumer;
class="kw">import com.hypixel.hytale.protocol.packets.world.PaletteType;
class="kw">import it.unimi.dsi.fastutil.ints.Int2ShortMap;
class="kw">import it.unimi.dsi.fastutil.ints.IntList;
class="kw">import it.unimi.dsi.fastutil.ints.IntSet;
class="kw">import java.lang.foreign.MemorySegment;
class="kw">import java.util.function.IntConsumer;
class="kw">import javax.annotation.Nonnull;

class="kw">public class="kw">abstract sealed class AbstractSectionPalette permits EmptySectionPalette, HalfByteSectionPalette, ByteSectionPalette, ShortSectionPalette {
   class="kw">public AbstractSectionPalette() {
   }

   class="kw">public class="kw">abstract PaletteType getPaletteType();

   class="kw">public class="kw">abstract AbstractSectionPalette.SetResult set(int var1, int var2);

   class="kw">public class="kw">abstract int get(int var1);

   class="kw">public class="kw">abstract boolean contains(int var1);

   class="kw">public class="kw">abstract boolean containsAny(IntList var1);

   class="kw">public boolean isSolid(int var1) {
      class="kw">return this.count() == 1 && this.contains(var1);
   }

   class="kw">public class="kw">abstract int count();

   class="kw">public class="kw">abstract int count(int var1);

   class="kw">public class="kw">abstract IntSet values();

   class="kw">public class="kw">abstract void forEachValue(IntConsumer var1);

   class="kw">public class="kw">abstract Int2ShortMap valueCounts();

   class="kw">public class="kw">abstract void find(@Nonnull IntList var1, @Nonnull IntConsumer var2);

   class="kw">public class="kw">abstract void find(@Nonnull IntList var1, @Nonnull BiIntConsumer var2);

   @Deprecated(since = "2026-02-26", forRemoval = true)
   class="kw">public void find(@Nonnull IntList var1, @Nonnull IntSet var2, @Nonnull IntConsumer var3) {
      this.find(var1, var3);
   }

   class="kw">public class="kw">abstract boolean shouldDemote();

   class="kw">public class="kw">abstract AbstractSectionPalette demote();

   class="kw">public class="kw">abstract AbstractSectionPalette promote();

   class="kw">public class="kw">abstract int serializedPacketByteSize();

   class="kw">public class="kw">abstract int serializeForPacket(MemorySegment var1, int var2);

   class="kw">public class="kw">abstract int serializedByteSize(AbstractSectionPalette.KeyMemorySerializer var1);

   class="kw">public class="kw">abstract int serialize(AbstractSectionPalette.KeyMemorySerializer var1, MemorySegment var2, int var3);

   class="kw">public class="kw">abstract int deserialize(AbstractSectionPalette.KeyMemoryDeserializer var1, MemorySegment var2, int var3);

   @Nonnull
   class="kw">public class="kw">static AbstractSectionPalette from(@Nonnull int[] var0, @Nonnull Int2ShortMap var1) {
      if (var1.size() == 1 && var1.containsKey(0)) {
         class="kw">return EmptySectionPalette.INSTANCE;
      } else if (var1.size() < 16) {
         class="kw">return new HalfByteSectionPalette(var0, var1);
      } else if (var1.size() < 256) {
         class="kw">return new ByteSectionPalette(var0, var1);
      } else if (var1.size() < 65536) {
         class="kw">return new ShortSectionPalette(var0, var1);
      } else {
         throw new UnsupportedOperationException("Too many block types for palette.");
      }
   }

   class="kw">public class="kw">interface KeyMemoryDeserializer {
      int deserialize(MemorySegment var1, int var2);

      int keySize(MemorySegment var1, int var2);
   }

   class="kw">public class="kw">interface KeyMemorySerializer {
      int serialize(MemorySegment var1, int var2, int var3);

      int keySize(int var1);
   }

   class="kw">public enum SetResult {
      ADDED_OR_REMOVED,
      CHANGED,
      UNCHANGED,
      REQUIRES_PROMOTE;

      SetResult() {
      }
   }
}