TypeName targetType = TypeName.get(enclosingElement.asType());
if (targetType instanceof ParameterizedTypeName) {
targetType = ((ParameterizedTypeName) targetType).rawType;
}
String packageName = getPackageName(enclosingElement);
<BUG>ClassName classFqcn = ClassName.get(packageName,
getClassName(enclosingElement, packageName) + BINDING_CLASS_SUFFIX);
boolean isFinal = enclosingElement.getModifiers().contains(Modifier.FINAL);
bindingClass = new BindingClass(targetType, classFqcn, isFinal);
</BUG>
targetClassMap.put(enclosingElement, bindingClass);

TypeName targetType = TypeName.get(enclosingElement.asType());
if (targetType instanceof ParameterizedTypeName) {
targetType = ((ParameterizedTypeName) targetType).rawType;
}
String packageName = getPackageName(enclosingElement);
String className = getClassName(enclosingElement, packageName);
ClassName binderClassName = ClassName.get(packageName, className + "_ViewBinder");
ClassName unbinderClassName = ClassName.get(packageName, className + "_ViewBinding");
boolean isFinal = enclosingElement.getModifiers().contains(Modifier.FINAL);
bindingClass = new BindingClass(targetType, binderClassName, unbinderClassName, isFinal);
