@Nullable
	public static Type fromArrayOpcode(int opcode) {
		return switch (opcode) {
			case Opcodes.ARRAYLENGTH, Opcodes.BALOAD, Opcodes.CALOAD, Opcodes.SALOAD, Opcodes.IALOAD,
					Opcodes.BASTORE, Opcodes.CASTORE, Opcodes.SASTORE, Opcodes.IASTORE -> Type.INT_TYPE;
			case Opcodes.AALOAD, Opcodes.AASTORE -> Types.OBJECT_TYPE;
			case Opcodes.FALOAD, Opcodes.FASTORE -> Type.FLOAT_TYPE;
			case Opcodes.DALOAD, Opcodes.DASTORE -> Type.DOUBLE_TYPE;
			case Opcodes.LALOAD, Opcodes.LASTORE -> Type.LONG_TYPE;
			default -> null;
		};
	}
@param opcode
		Some array opcode.

@return The implied variable type, or {@code null} if the passed opcode does not imply a type.
recaf-core/src/main/java/software/coley/recaf/util/Types.java