docs: protected void generateIElementBuilder() {
  		final List<TopElementDescription> topElements = generateTopElements(true, false);
  		for (final TopElementDescription element : topElements) {
  			final StringConcatenationClient content = new StringConcatenationClient() {
  				@Override
  				protected void appendTo(TargetStringConcatenation it) {
  					it.append("/** Builder of a " + getLanguageName() //$NON-NLS-1$
  							+ " " + element.getElementDescription().getElementType().getSimpleName() //$NON-NLS-1$
  							+ "."); //$NON-NLS-1$
  					it.newLine();
  					it.append(" */"); //$NON-NLS-1$
  					it.newLine();
  					it.append("@SuppressWarnings(\"all\")"); //$NON-NLS-1$
  					it.newLine();
  					it.append("public interface "); //$NON-NLS-1$
  					it.append(element.getElementDescription().getBuilderInterfaceType().getSimpleName());
  					it.append(" {"); //$NON-NLS-1$
  					it.newLineIfNotEmpty();
  					it.newLine();
  					it.append(element.getContent());
  					for (final StringConcatenationClient cons : generateMembers(element.getConstructors(),
  							element, true, false, true)) {
  						it.append(cons);
  					}
  					for (final StringConcatenationClient mbr : generateMembers(element.getNamedMembers(),
  							element, true, false, true)) {
  						it.append(mbr);
  					}
  					for (final StringConcatenationClient mbr : generateMembers(element.getUnnamedMembers(),
  							element, true, false, false)) {
  						it.append(mbr);
  					}
  					it.append("}"); //$NON-NLS-1$
  					it.newLineIfNotEmpty();
  					it.newLine();
  				}
  			};
  			final JavaFileAccess javaFile = getFileAccessFactory().createJavaFile(
  					element.getElementDescription().getBuilderInterfaceType(), content);
  			javaFile.writeTo(getSrcGen());
  		}
  	}