fileScope.startLine("package " + packageName + ";\n");
fileScope.append("\n");
fileScope.startLine("public class " + className + " implements " +
rootImpl.getType().getCanonicalName() + " {\n");
ClassScope rootClassScope = fileScope.newClassScope();
rootClassScope.indentRight();
rootImpl.writeStaticMethodJava(rootClassScope);
for (TypeHandler<?> typeHandler : type2TypeHandler.values()) {