Mercurial > hg > truffle
diff graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/TruffleProcessor.java @ 16759:23415229349b
Truffle-DSL: new package structure.
author | Christian Humer <christian.humer@gmail.com> |
---|---|
date | Mon, 11 Aug 2014 15:57:14 +0200 |
parents | bd28da642eea |
children | a665483c3881 |
line wrap: on
line diff
--- a/graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/TruffleProcessor.java Mon Aug 11 15:53:05 2014 +0200 +++ b/graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/TruffleProcessor.java Mon Aug 11 15:57:14 2014 +0200 @@ -31,8 +31,9 @@ import javax.tools.Diagnostic.Kind; import com.oracle.truffle.dsl.processor.ProcessorContext.ProcessCallback; -import com.oracle.truffle.dsl.processor.node.*; -import com.oracle.truffle.dsl.processor.typesystem.*; +import com.oracle.truffle.dsl.processor.generator.*; +import com.oracle.truffle.dsl.processor.java.*; +import com.oracle.truffle.dsl.processor.parser.*; /** * THIS IS NOT PUBLIC API. @@ -44,8 +45,6 @@ private List<AnnotationProcessor<?>> generators; - private RoundEnvironment round; - @Override public boolean process(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv) { if (!roundEnv.processingOver()) { @@ -55,7 +54,6 @@ } private void processImpl(RoundEnvironment env) { - this.round = env; // TODO run verifications that other annotations are not processed out of scope of the // operation or typelattice. try { @@ -64,7 +62,7 @@ AbstractParser<?> parser = generator.getParser(); if (parser.getAnnotationType() != null) { for (Element e : env.getElementsAnnotatedWith(parser.getAnnotationType())) { - processElement(env, generator, e, false); + processElement(generator, e, false); } } @@ -72,24 +70,23 @@ for (Element e : env.getElementsAnnotatedWith(annotationType)) { TypeElement processedType; if (parser.isDelegateToRootDeclaredType()) { - processedType = Utils.findRootEnclosingType(e); + processedType = ElementUtils.findRootEnclosingType(e); } else { - processedType = Utils.findNearestEnclosingType(e); + processedType = ElementUtils.findNearestEnclosingType(e); } - processElement(env, generator, processedType, false); + processElement(generator, processedType, false); } } } } finally { ProcessorContext.setThreadLocalInstance(null); - this.round = null; } } - private static void processElement(RoundEnvironment env, AnnotationProcessor<?> generator, Element e, boolean callback) { + private static void processElement(AnnotationProcessor<?> generator, Element e, boolean callback) { try { - generator.process(env, e, callback); + generator.process(e, callback); } catch (Throwable e1) { handleThrowable(generator, e1, e); } @@ -97,7 +94,7 @@ private static void handleThrowable(AnnotationProcessor<?> generator, Throwable t, Element e) { String message = "Uncaught error in " + generator.getClass().getSimpleName() + " while processing " + e; - ProcessorContext.getInstance().getEnvironment().getMessager().printMessage(Kind.ERROR, message + ": " + Utils.printException(t), e); + ProcessorContext.getInstance().getEnvironment().getMessager().printMessage(Kind.ERROR, message + ": " + ElementUtils.printException(t), e); } @Override @@ -107,7 +104,7 @@ if (annotationType != null) { Annotation annotation = template.getAnnotation(annotationType); if (annotation != null) { - processElement(round, generator, template, true); + processElement(generator, template, true); } } }