private static ArrayType getArrayType(final Type elementType) {
   if (elementType.isInteger()) {
     return Type.INT_ARRAY;
   } else if (elementType.isLong()) {
     return Type.LONG_ARRAY;
   } else if (elementType.isNumeric()) {
     return Type.NUMBER_ARRAY;
   } else {
     return Type.OBJECT_ARRAY;
   }
 }
 static Object computePresets(
     final Expression[] value, final Type elementType, final int[] postsets) {
   assert !elementType.isUnknown();
   if (elementType.isInteger()) {
     return presetIntArray(value, postsets);
   } else if (elementType.isLong()) {
     return presetLongArray(value, postsets);
   } else if (elementType.isNumeric()) {
     return presetDoubleArray(value, postsets);
   } else {
     return presetObjectArray(value, postsets);
   }
 }