use of com.github.havardh.javaflow.phases.transform.InheritanceTransformer in project javaflow by havardh.
the class JavaFlowTest method parseAll.
private static Map<String, Type> parseAll(String... modelNames) {
FileReader adapter = new FileReader();
Parser parser = new JavaParser();
Transformer transformer = new InheritanceTransformer();
List<Type> types = stream(modelNames).map(name -> BASE_PATH + name + ".java").map(adapter::read).map(Optional::get).map(parser::parse).map(Optional::get).collect(toList());
transformer.transform(types);
return types.stream().collect(toMap(type -> type.getCanonicalName().getName(), identity()));
}
use of com.github.havardh.javaflow.phases.transform.InheritanceTransformer in project javaflow by havardh.
the class JavaFlow method main.
/**
* Main routine for JavaFlow command line runner
*
* @param args command line arguments
*/
public static void main(String[] args) {
TypeMap typeMap = new TypeMap("types.yml");
Converter converter = new JavaFlowConverter(typeMap);
List<Verifier> verifierList = new ArrayList<>();
verifierList.add(new MemberFieldsPresentVerifier(typeMap));
if (stream(args).anyMatch(arg -> arg.equals(VERIFY_GETTERS_ARG))) {
verifierList.add(new ClassGetterNamingVerifier());
}
Execution execution = new Execution(new FileReader(), new JavaParser(), asList(new InheritanceTransformer(), new SortedTypeTransformer()), verifierList, new FlowWriter(converter), asList(new CommentPrependTransformer("Generated by javaflow 1.4.1-SNAPSHOT"), new EslintDisableTransformer(singletonList("no-use-before-define")), new CommentPrependTransformer("@flow")));
System.out.println(execution.run(filterOutArgs(args)));
}
Aggregations