void addName(List<Object> parameterList) { parameterList.add(name()); }
@Override public String toString() { return simpleTypeInfo().getDeclaredName() + " " + name(); }
private CodeBlock buildReturnStatement(Naming naming, int index) { String parameterString = constructorInfo.parameterInfoList().stream() .map(parameterInfo -> constructorPrefix(index, parameterInfo.name())) .collect(Collectors.joining(", ")); String customString = customFieldList.stream() .map(BuilderCustomField::name) .collect(Collectors.joining(", ")); return CodeBlock.builder() .addStatement("return new $T($L$Lthis)", naming.pojoUnboundedTypeName(), customFieldList.isEmpty() ? customString : customString + ", ", parameterString.isEmpty() ? parameterString : parameterString + ", ") .build(); }
public FieldSpec write() { SimpleTypeInfo simpleTypeInfo = parameterInfo.simpleTypeInfo(); TypeName typeName = simpleTypeInfo.typeName(); String name = parameterInfo.name(); return FieldSpec.builder(typeName, prefix + name, modifiers) .build(); }
@AutoFunctional public ParameterSpec toParameterSpec() { TypeName type = simpleTypeInfo().typeName(); return ParameterSpec.builder(type, name()) .build(); }
public FieldInfo toFieldInfo() { return FieldInfo.builder() .simpleTypeInfo(simpleTypeInfo()) .name(name()) .build(); }
public ToMustacheHelper toMustacheHelper() { return Mustaches.toMustacheHelper() .add("declaration", toString()) .add("name", name()) .add("type", simpleTypeInfo()); }
@Override public MustacheObject toMustache() { return Mustaches.toMustacheHelper() .add("declaration", toString()) .add("name", name()) .add("type", simpleTypeInfo()) .toMustache(); }
private CodeBlock returnStatement(ConstructorInfo input) { List<ParameterInfo> parameterInfoList = input.parameterInfoList(); ConstructorInfoCodeWriter writer = input.statementWriter() .add("return new $T(") .add("$L").forEachParameter(", ") .add(", ").when(parameterInfoList.size() > 0) .add("this)") .set(typeNameUnbounded(className())); for (ParameterInfo parameterInfo : parameterInfoList) { writer.set(constructorPrefix(index, parameterInfo.name())); } return writer.write(); }