public static ClassData getPrimitiveClassFor(TypeType type) {
        switch (type) {
            case BOOLEAN: return boolClassData;
            case BYTE: return byteClassData;
            case CHAR: return charClassData;
            case SHORT: return shortClassData;
            case INT: return intClassData;
            case LONG: return longClassData;
            case FLOAT: return floatClassData;
            case DOUBLE: return doubleClassData;
            case VOID: return voidClassData;

            default: throw new IllegalArgumentException("Type is not supported:" + type);
        }
    }