// Syntax example: javax 1000797 timeout=500 1000796 !747 !class _javax 19 m { p { int i; for (i = 0; i < args.length; i++) { int idx = args[i].indexOf("="); if (idx < 0) break; } S progID = args[i]; Class prog = hotwire(progID); for (int j = 0; j < i; j++) { S arg = args[j]; int idx = arg.indexOf("="); S var = arg.substring(0, idx); S value = arg.substring(idx+1); setFlex(prog, var, value); } callMain(prog, dropFirst(i+1, args)); } static void setFlex(Class c, String var, String value) { Field f = findField(c, var); Class t = f.getType(); O v = value; if (t == Integer.class || t == int.class) v = Integer.parseInt(value); else if (t == Long.class || t == long.class) v = Long.parseLong(value); else if (t == Boolean.class || t == boolean.class) v = Boolean.parseBoolean(value); set(c, var, v); } }