package nallar.tickthreading.global;

import nallar.tickthreading.util.BooleanThreadLocalDefaultFalse;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedList;

@SuppressWarnings("UnusedDeclaration")
public class ThreadLocals {
	public static final ThreadLocal redPowerBlockUpdateSet = new HashSetThreadLocal();
	public static final ThreadLocal redPowerPowerSearch = new LinkedListThreadLocal();
	public static final ThreadLocal redPowerPowerSearchTest = new HashSetThreadLocal();
	public static final BooleanThreadLocalDefaultFalse redPowerIsSearching = new BooleanThreadLocalDefaultFalse();
	public static final ThreadLocal eligibleChunksForSpawning = new HashMapThreadLocal();
	public static final ThreadLocal factorizationFindLightAirParentToVisit = new HashSetThreadLocal();
	public static final ThreadLocal mapChunkTempByteArray = new MapChunkTempByteArrayThreadLocal();

	private static class ArrayListThreadLocal extends ThreadLocal {
		ArrayListThreadLocal() {
		}

		@Override
		protected Object initialValue() {
			return new ArrayList();
		}
	}

	private static class HashMapThreadLocal extends ThreadLocal {
		HashMapThreadLocal() {
		}

		@Override
		protected Object initialValue() {
			return new HashMap();
		}
	}

	private static class HashSetThreadLocal extends ThreadLocal {
		HashSetThreadLocal() {
		}

		@Override
		protected Object initialValue() {
			return new HashSet();
		}
	}

	private static class LinkedListThreadLocal extends ThreadLocal {
		LinkedListThreadLocal() {
		}

		@Override
		protected Object initialValue() {
			return new LinkedList();
		}
	}

	public static class MapChunkTempByteArrayThreadLocal extends ThreadLocal<byte[]> {
		@Override
		public byte[] initialValue() {
			return new byte[196864];
		}
	}
}

@@ -37,76 +37,8 @@
 %0D%0A%0D%0A
-import nallar.tickthreading.util.BooleanThreadLocalDefaultFalse;%0D%0A%0D%0A
 impo
@@ -221,377 +221,8 @@
  %7B%0D%0A
-%09public static final ThreadLocal redPowerBlockUpdateSet = new HashSetThreadLocal();%0D%0A%09public static final ThreadLocal redPowerPowerSearch = new LinkedListThreadLocal();%0D%0A%09public static final ThreadLocal redPowerPowerSearchTest = new HashSetThreadLocal();%0D%0A%09public static final BooleanThreadLocalDefaultFalse redPowerIsSearching = new BooleanThreadLocalDefaultFalse();%0D%0A
 %09pub

Remove unused ThreadLocals