public void processCase(int key, Label end) { Constructor constructor = constructors[key]; Class[] types = constructor.getParameterTypes(); for (int i = 0; i < types.length; i++) { load_arg(1); aaload(i); unbox(types[i]); } invoke(constructor);
public void processCase(Object key, Label end) {  push(signatures.indexOf(key));
            public void processCase(int key, Label end) {                Constructor constructor = constructors[key];                Class[] types = constructor.getParameterTypes();                for (int i = 0; i < types.length; i++) {                    load_arg(1);                    aaload(i);                    unbox(types[i]);                }                invoke(constructor);                return_value();            }