static O nuObjectWithoutArguments(S className) ctex { ret nuObject(Class.forName(className), args); } static A nuObjectWithoutArguments(Class c) ctex { Constructor m = nuObjectWithoutArguments_findConstructor(c); m.setAccessible(true); return (A) m.newInstance(args); } static Constructor nuObjectWithoutArguments_findConstructor(Class c, Object... args) { for (Constructor m : c.getDeclaredConstructors()) if (empty(m.getParameterTypes())) ret m; fail("No default constructor found in " + c.getName()); }