FeatureEvaluatorHelper class

Пакет: com.hypixel.hytale.server.npc.asset.builder

Файл: com/hypixel/hytale/server/npc/asset/builder/FeatureEvaluatorHelper.java

Методы (17)

МодификаторыВозвратСигнатура
public void addvoid add(ProviderEvaluator var1)
public void addComponentRequirementValidatorvoid addComponentRequirementValidator(BiConsumer<FeatureEvaluatorHelper, ExecutionContext> var1)
public void addProviderReferenceValidatorvoid addProviderReferenceValidator(BiConsumer<BuilderManager, ExecutionContext> var1)
public boolean belongsToFeatureRequiringComponentboolean belongsToFeatureRequiringComponent()
public boolean canAddProviderboolean canAddProvider()
public void disallowParameterProvidersvoid disallowParameterProviders()
for for(BiConsumer var4 : this.providerReferenceValidators)
for for(BiConsumer var4 : this.componentRequirementValidators)
if if(this.providerReferenceValidators == null)
if if(this.componentRequirementValidators == null)
if if(this.providerReferenceValidators != null)
if if(this.componentRequirementValidators != null)
public boolean isDisallowParameterProvidersboolean isDisallowParameterProviders()
public boolean requiresProviderReferenceEvaluationboolean requiresProviderReferenceEvaluation()
public void setContainsReferencevoid setContainsReference()
public void validateComponentRequirementsvoid validateComponentRequirements(FeatureEvaluatorHelper var1, ExecutionContext var2)
public void validateProviderReferencesvoid validateProviderReferences(BuilderManager var1, ExecutionContext var2)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.server.npc.asset.builder;

class="kw">import com.hypixel.hytale.server.npc.asset.builder.providerevaluators.ProviderEvaluator;
class="kw">import com.hypixel.hytale.server.npc.util.expression.ExecutionContext;
class="kw">import it.unimi.dsi.fastutil.objects.ObjectArrayList;
class="kw">import java.util.Collections;
class="kw">import java.util.List;
class="kw">import java.util.function.BiConsumer;
class="kw">import javax.annotation.Nonnull;

class="kw">public class FeatureEvaluatorHelper {
   @Nonnull
   class="kw">private List<ProviderEvaluator> evaluators = new ObjectArrayList();
   class="kw">private List<BiConsumer<BuilderManager, ExecutionContext>> providerReferenceValidators;
   class="kw">private List<BiConsumer<FeatureEvaluatorHelper, ExecutionContext>> componentRequirementValidators;
   class="kw">private boolean locked;
   class="kw">private boolean containsProviderReference;
   class="kw">private boolean isFeatureRequiringComponent;
   class="kw">private boolean disallowParameterProviders;

   class="kw">public FeatureEvaluatorHelper() {
   }

   class="kw">public FeatureEvaluatorHelper(boolean var1) {
      this.isFeatureRequiringComponent = var1;
   }

   class="kw">public boolean isDisallowParameterProviders() {
      class="kw">return this.disallowParameterProviders;
   }

   class="kw">public void add(ProviderEvaluator var1) {
      this.evaluators.add(var1);
   }

   class="kw">public boolean canAddProvider() {
      class="kw">return !this.locked;
   }

   @Nonnull
   class="kw">public FeatureEvaluatorHelper lock() {
      this.locked = true;
      this.evaluators = Collections.unmodifiableList(this.evaluators);
      class="kw">return this;
   }

   class="kw">public void setContainsReference() {
      this.containsProviderReference = true;
   }

   class="kw">public void addProviderReferenceValidator(BiConsumer<BuilderManager, ExecutionContext> var1) {
      if (this.providerReferenceValidators == null) {
         this.providerReferenceValidators = new ObjectArrayList();
      }

      this.providerReferenceValidators.add(var1);
   }

   class="kw">public void addComponentRequirementValidator(BiConsumer<FeatureEvaluatorHelper, ExecutionContext> var1) {
      if (this.componentRequirementValidators == null) {
         this.componentRequirementValidators = new ObjectArrayList();
      }

      this.componentRequirementValidators.add(var1);
   }

   @Nonnull
   class="kw">public List<ProviderEvaluator> getProviders() {
      class="kw">return this.evaluators;
   }

   class="kw">public boolean requiresProviderReferenceEvaluation() {
      class="kw">return this.containsProviderReference;
   }

   class="kw">public boolean belongsToFeatureRequiringComponent() {
      class="kw">return this.isFeatureRequiringComponent;
   }

   class="kw">public void validateProviderReferences(BuilderManager var1, ExecutionContext var2) {
      if (this.providerReferenceValidators != null) {
         for (BiConsumer var4 : this.providerReferenceValidators) {
            var4.accept(var1, var2);
         }
      }
   }

   class="kw">public void validateComponentRequirements(FeatureEvaluatorHelper var1, ExecutionContext var2) {
      if (this.componentRequirementValidators != null) {
         for (BiConsumer var4 : this.componentRequirementValidators) {
            var4.accept(var1, var2);
         }
      }
   }

   class="kw">public void disallowParameterProviders() {
      this.disallowParameterProviders = true;
   }
}