in dataenum-processor/src/main/java/com/spotify/dataenum/processor/generator/value/ValueMethods.java [114:127]
public MethodSpec createAsMethod(OutputSpec spec) {
Builder builder =
MethodSpec.methodBuilder("as" + value.name())
.addModifiers(Modifier.PUBLIC, Modifier.FINAL)
.returns(value.parameterizedOutputClass())
.addStatement("return ($T) this", value.parameterizedOutputClass());
if (!ValueTypeFactory.extractMissingTypeVariablesForValue(value, spec).isEmpty()
&& value.hasTypeVariables()) {
builder.addAnnotation(ValueTypeFactory.SUPPRESS_UNCHECKED_WARNINGS);
}
return builder.build();
}