Class InternalReferenceResolver

java.lang.Object
com.hypixel.hytale.server.npc.asset.builder.InternalReferenceResolver

public class InternalReferenceResolver extends Object
  • Field Details

    • builders

      private final List<BuilderInstructionReference> builders
    • indexMap

      @Nullable private it.unimi.dsi.fastutil.objects.Object2IntMap<String> indexMap
    • nameMap

      @Nullable private it.unimi.dsi.fastutil.ints.Int2ObjectMap<String> nameMap
    • recordedDependencies

      @Nullable private it.unimi.dsi.fastutil.ints.IntSet recordedDependencies
  • Constructor Details

    • InternalReferenceResolver

      public InternalReferenceResolver()
  • Method Details

    • getOrCreateIndex

      public int getOrCreateIndex(String name)
    • setRecordDependencies

      public void setRecordDependencies()
    • getRecordedDependenices

      @Nullable public it.unimi.dsi.fastutil.ints.IntSet getRecordedDependenices()
    • stopRecordingDependencies

      public void stopRecordingDependencies()
    • addBuilder

      public void addBuilder(int index, BuilderInstructionReference builder)
    • validateInternalReferences

      public void validateInternalReferences(String configName, @Nonnull List<String> errors)
    • validateNoCycles

      private void validateNoCycles(@Nonnull BuilderInstructionReference builder, int index, @Nonnull it.unimi.dsi.fastutil.ints.IntArrayList path)
    • getBuilder

      public <T> Builder<T> getBuilder(int index, Class<?> classType)
    • optimise

      public void optimise()