public Object getElements()

in application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/heap/model/JavaValueArray.java [144:218]


	public Object getElements() {
		final int len = getLength();
		final char et = getElementType();
		byte[] data = getValue();
		int index = 0;
		switch (et) {
		case 'Z': {
			boolean[] res = new boolean[len];
			for (int i = 0; i < len; i++) {
				res[i] = booleanAt(index, data);
				index++;
			}
			return res;
		}
		case 'B': {
			byte[] res = new byte[len];
			for (int i = 0; i < len; i++) {
				res[i] = byteAt(index, data);
				index++;
			}
			return res;
		}
		case 'C': {
			char[] res = new char[len];
			for (int i = 0; i < len; i++) {
				res[i] = charAt(index, data);
				index += 2;
			}
			return res;
		}
		case 'S': {
			short[] res = new short[len];
			for (int i = 0; i < len; i++) {
				res[i] = shortAt(index, data);
				index += 2;
			}
			return res;
		}
		case 'I': {
			int[] res = new int[len];
			for (int i = 0; i < len; i++) {
				res[i] = intAt(index, data);
				index += 4;
			}
			return res;
		}
		case 'J': {
			long[] res = new long[len];
			for (int i = 0; i < len; i++) {
				res[i] = longAt(index, data);
				index += 8;
			}
			return res;
		}
		case 'F': {
			float[] res = new float[len];
			for (int i = 0; i < len; i++) {
				res[i] = floatAt(index, data);
				index += 4;
			}
			return res;
		}
		case 'D': {
			double[] res = new double[len];
			for (int i = 0; i < len; i++) {
				res[i] = doubleAt(index, data);
				index += 8;
			}
			return res;
		}
		default: {
			throw new RuntimeException("unknown primitive type?");
		}
		}
	}