2023-04-20 10:11:12 +02:00
|
|
|
package it.cavallium.datagen.plugin.classgen;
|
2023-01-20 01:14:37 +01:00
|
|
|
|
|
|
|
import com.squareup.javapoet.TypeSpec;
|
2023-04-20 10:11:12 +02:00
|
|
|
import it.cavallium.datagen.plugin.ClassGenerator;
|
2023-01-20 01:14:37 +01:00
|
|
|
import java.util.stream.Stream;
|
|
|
|
import javax.lang.model.element.Modifier;
|
|
|
|
|
|
|
|
public class GenBaseType extends ClassGenerator {
|
|
|
|
|
|
|
|
public GenBaseType(ClassGeneratorParams params) {
|
|
|
|
super(params);
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
protected Stream<GeneratedClass> generateClasses() {
|
|
|
|
var baseTypeClass = TypeSpec.enumBuilder("BaseType");
|
|
|
|
baseTypeClass.addModifiers(Modifier.PUBLIC);
|
|
|
|
dataModel.getBaseTypesComputed().forEach(baseType -> baseTypeClass.addEnumConstant(baseType.getName()));
|
|
|
|
return Stream.of(new GeneratedClass(dataModel.getRootPackage(basePackageName), baseTypeClass));
|
|
|
|
}
|
|
|
|
}
|