assert argumentClassName != null;
ModelFactory f = environment.getModelFactory();
SimpleName className = f.newSimpleName(classNameString);
ImportBuilder importer = new ImportBuilder(
f,
f.newPackageDeclaration(environment.getEpiloguePackageName(moduleId)),
Strategy.TOP_LEVEL);
importer.resolvePackageMember(className);
List<Expression> arguments = Lists.create();
arguments.add(classLiteralOrNull(f, importer, argumentClassName));
return emitConstructorClass(className, importer.toType(baseClass), importer, arguments);