class Processor {

    public Set<Class<? extends Annotation>> annotations() {
        if (annotations == null) {
            annotations = parsers.stream().collect(flatMapping((resolver) -> resolver.annotations().stream(), toSet()));
        }
        
        return annotations;
    }

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

}