- public static Type fromDescriptor(String descriptor) {
- if(descriptor.equals("V")) return VOID;
- if(descriptor.equals("I")) return INT;
- if(descriptor.equals("J")) return LONG;
- if(descriptor.equals("Z")) return BOOLEAN;
- if(descriptor.equals("D")) return DOUBLE;
- if(descriptor.equals("F")) return FLOAT;
- if(descriptor.equals("B")) return BYTE;
- if(descriptor.equals("C")) return CHAR;
- if(descriptor.equals("S")) return SHORT;
- if(descriptor.endsWith("[")) return new Type.Array(fromDescriptor(descriptor.substring(0, descriptor.indexOf('['))),
- descriptor.length() - descriptor.indexOf('['));
- return new Type.Object(descriptor);
+ public static Type fromDescriptor(String d) {
+ if (d.equals("V")) return VOID;
+ if (d.equals("I")) return INT;
+ if (d.equals("J")) return LONG;
+ if (d.equals("Z")) return BOOLEAN;
+ if (d.equals("D")) return DOUBLE;
+ if (d.equals("F")) return FLOAT;
+ if (d.equals("B")) return BYTE;
+ if (d.equals("C")) return CHAR;
+ if (d.equals("S")) return SHORT;
+ if (d.endsWith("["))
+ return new Type.Array(fromDescriptor(d.substring(0, d.indexOf('['))),
+ d.length() - d.indexOf('['));
+ return new Type.Object(d);