private byte getNumUnusedBytes()

in application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/stats/DataFieldStats.java [211:252]


	private byte getNumUnusedBytes(JavaValue value) {
		if (value instanceof JavaInt) {
			JavaInt intValue = (JavaInt) value;
			int val = intValue.getValue();
			if (val >= Byte.MIN_VALUE && val <= Byte.MAX_VALUE) {
				return 3;
			} else if (val >= Short.MIN_VALUE && val <= Short.MAX_VALUE) {
				return 2;
			} else {
				return 0;
			}
		} else if (value instanceof JavaChar) {
			JavaChar charValue = (JavaChar) value;
			char val = charValue.getValue();
			if (val <= 0xFF) {
				return 1;
			} else {
				return 0;
			}
		} else if (value instanceof JavaShort) {
			JavaShort shortValue = (JavaShort) value;
			short val = shortValue.getValue();
			if (val >= Byte.MIN_VALUE && val <= Byte.MAX_VALUE) {
				return 1;
			} else {
				return 0;
			}
		} else if (value instanceof JavaLong) {
			JavaLong longValue = (JavaLong) value;
			long val = longValue.getValue();
			if (val >= Byte.MIN_VALUE && val <= Byte.MAX_VALUE) {
				return 7;
			} else if (val >= Short.MIN_VALUE && val <= Short.MAX_VALUE) {
				return 6;
			} else if (val >= Integer.MIN_VALUE && val <= Integer.MAX_VALUE) {
				return 4;
			} else {
				return 0;
			}
		}
		return 0;
	}