class Processor {

    public void run() {
        for (var parser : parsers) {
            var types = parser.annotations().stream().collect(flatMapping(this::annotated, toSet()));
            parser.parse(types);
        }
    }

    public  Processor(Environment<T> environment, PluginParser<T> parser);
    public  Processor(Environment<T> environment, List<Parser<T>> parsers);

}