From 5b0acccbc70c2daca3d31226711292656b7b7fd5 Mon Sep 17 00:00:00 2001 From: Adam Date: Mon, 11 Oct 2021 19:18:03 -0400 Subject: [PATCH] api: make HashTable implement iterable --- .../src/main/java/net/runelite/api/HashTable.java | 11 +---------- .../plugins/timetracking/farming/FarmingTracker.java | 10 ++++++---- 2 files changed, 7 insertions(+), 14 deletions(-) diff --git a/runelite-api/src/main/java/net/runelite/api/HashTable.java b/runelite-api/src/main/java/net/runelite/api/HashTable.java index a7adda6c32..cdf6a628cc 100644 --- a/runelite-api/src/main/java/net/runelite/api/HashTable.java +++ b/runelite-api/src/main/java/net/runelite/api/HashTable.java @@ -24,13 +24,11 @@ */ package net.runelite.api; -import java.util.Collection; - /** * A data structure that uses a hash function to compute an index into an * array of buckets from which node objects can be quickly obtained. */ -public interface HashTable +public interface HashTable extends Iterable { /** * Gets a node by its hash value. @@ -39,11 +37,4 @@ public interface HashTable * @return the associated node */ T get(long value); - - /** - * Gets a collection of all nodes stored in this table. - * - * @return the nodes stored - */ - Collection getNodes(); } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/timetracking/farming/FarmingTracker.java b/runelite-client/src/main/java/net/runelite/client/plugins/timetracking/farming/FarmingTracker.java index 4a381220b2..965ad11b59 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/timetracking/farming/FarmingTracker.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/timetracking/farming/FarmingTracker.java @@ -40,6 +40,7 @@ import lombok.extern.slf4j.Slf4j; import net.runelite.api.Client; import net.runelite.api.GameState; import net.runelite.api.Varbits; +import net.runelite.api.WidgetNode; import net.runelite.api.coords.WorldPoint; import net.runelite.api.vars.Autoweed; import net.runelite.api.widgets.WidgetModalMode; @@ -101,11 +102,12 @@ public class FarmingTracker boolean changed = false; //Varbits don't get sent when a modal widget is open so just return - if (client.getComponentTable().getNodes() - .stream() - .anyMatch(widgetNode -> widgetNode.getModalMode() != WidgetModalMode.NON_MODAL)) + for (WidgetNode widgetNode : client.getComponentTable()) { - return false; + if (widgetNode.getModalMode() != WidgetModalMode.NON_MODAL) + { + return false; + } } {