From 98036e51a625141795b864ad10517d0b3051caa7 Mon Sep 17 00:00:00 2001 From: gnembon Date: Fri, 25 Oct 2019 23:06:51 -0300 Subject: [PATCH] should technically be little faster --- src/main/java/carpet/script/Expression.java | 5 +++-- src/main/java/carpet/script/ScriptHost.java | 7 ++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/main/java/carpet/script/Expression.java b/src/main/java/carpet/script/Expression.java index 8bd840c9..75124926 100644 --- a/src/main/java/carpet/script/Expression.java +++ b/src/main/java/carpet/script/Expression.java @@ -24,6 +24,7 @@ import carpet.script.value.MapValue; import carpet.script.value.NumericValue; import carpet.script.value.StringValue; import carpet.script.value.Value; +import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap; import org.apache.commons.lang3.text.WordUtils; import java.math.BigInteger; @@ -388,10 +389,10 @@ public class Expression implements Cloneable private LazyValue ast = null; /** script specific operatos and built-in functions */ - private Map operators = new HashMap<>(); + private Map operators = new Object2ObjectOpenHashMap<>(); boolean isAnOperator(String opname) { return operators.containsKey(opname) || operators.containsKey(opname+"u");} - private Map functions = new HashMap<>(); + private Map functions = new Object2ObjectOpenHashMap<>(); Set getFunctionNames() {return functions.keySet();} @Override diff --git a/src/main/java/carpet/script/ScriptHost.java b/src/main/java/carpet/script/ScriptHost.java index 7b8a736c..5bffe563 100644 --- a/src/main/java/carpet/script/ScriptHost.java +++ b/src/main/java/carpet/script/ScriptHost.java @@ -9,6 +9,7 @@ import carpet.script.value.NumericValue; import carpet.script.value.StringValue; import carpet.script.value.Value; import com.mojang.brigadier.exceptions.CommandSyntaxException; +import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityType; import net.minecraft.nbt.Tag; @@ -29,9 +30,9 @@ import static java.lang.Math.max; public class ScriptHost { - private final Map userHosts = new HashMap<>(); - public Map globalFunctions = new HashMap<>(); - public Map globalVariables = new HashMap<>(); + private final Map userHosts = new Object2ObjectOpenHashMap<>(); + public Map globalFunctions = new Object2ObjectOpenHashMap<>(); + public Map globalVariables = new Object2ObjectOpenHashMap<>(); private Tag globalState; private int saveTimeout;