Interface TagHandler

All Superinterfaces:
TagReadable, TagWritable

public interface TagHandler extends TagReadable, TagWritable
Represents an element which can read and write tags.
  • Method Details

    • readableCopy

      @NotNull @NotNull TagReadable readableCopy()
      Creates a readable copy of this handler.

      Similar to asCompound() with the advantage that cached objects and adaptive optimizations may be reused.

      Returns:
      a copy of this handler
    • copy

      @NotNull @NotNull TagHandler copy()
      Creates a copy of this handler.

      Similar to fromCompound(NBTCompoundLike) using asCompound() with the advantage that cached objects and adaptive optimizations may be reused.

      Returns:
      a copy of this handler
    • updateContent

      void updateContent(@NotNull @NotNull org.jglrxavpok.hephaistos.nbt.NBTCompoundLike compound)
      Updates the content of this handler.

      Can be used as a clearing method with NBTCompound.EMPTY.

      Parameters:
      compound - the new content of this handler
    • asCompound

      @NotNull @NotNull org.jglrxavpok.hephaistos.nbt.NBTCompound asCompound()
      Converts the content of this handler into a NBTCompound.
      Returns:
      a nbt compound representation of this handler
    • updateTag

      @Experimental <T> void updateTag(@NotNull @NotNull Tag<T> tag, @NotNull @NotNull UnaryOperator<@UnknownNullability T> value)
    • updateAndGetTag

      @Experimental <T> @UnknownNullability T updateAndGetTag(@NotNull @NotNull Tag<T> tag, @NotNull @NotNull UnaryOperator<@UnknownNullability T> value)
    • getAndUpdateTag

      @Experimental <T> @UnknownNullability T getAndUpdateTag(@NotNull @NotNull Tag<T> tag, @NotNull @NotNull UnaryOperator<@UnknownNullability T> value)
    • newHandler

      @Experimental @NotNull static @NotNull TagHandler newHandler()
    • fromCompound

      @NotNull static @NotNull TagHandler fromCompound(@NotNull @NotNull org.jglrxavpok.hephaistos.nbt.NBTCompoundLike compound)
      Copy the content of the given NBTCompoundLike into a new TagHandler.
      Parameters:
      compound - the compound to read tags from
      Returns:
      a new tag handler with the content of the given compound