Mercurial > hg > graal-jvmci-8
comparison graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/ext/ExtensionParser.java @ 7502:6343a09b2ec1
Codegen operation generation is inferred from the node type hierarchy.
author | Christian Humer <christian.humer@gmail.com> |
---|---|
date | Fri, 18 Jan 2013 13:28:12 +0100 |
parents | a748e4d44694 |
children | 5e3d1a68664e |
comparison
equal
deleted
inserted
replaced
7497:0f8c6dbf68be | 7502:6343a09b2ec1 |
---|---|
44 this.context = context; | 44 this.context = context; |
45 this.factory = new ExtensionCodeElementFactory(context); | 45 this.factory = new ExtensionCodeElementFactory(context); |
46 this.extensionContext = new ExtensionContextImpl(context.getEnvironment(), null, factory); | 46 this.extensionContext = new ExtensionContextImpl(context.getEnvironment(), null, factory); |
47 } | 47 } |
48 | 48 |
49 public List<WritableElement> parseAll(TypeElement typeElement) { | 49 public List<WritableElement> parseAll(TypeElement typeElement, List<? extends Element> elements) { |
50 List<WritableElement> generatedMethods = new ArrayList<>(); | 50 List<WritableElement> generatedMethods = new ArrayList<>(); |
51 parseElement(generatedMethods, typeElement); | 51 parseElement(generatedMethods, typeElement); |
52 | 52 |
53 List<? extends ExecutableElement> methods = ElementFilter.methodsIn(typeElement.getEnclosedElements()); | 53 List<? extends ExecutableElement> methods = ElementFilter.methodsIn(elements); |
54 for (ExecutableElement method : methods) { | 54 for (ExecutableElement method : methods) { |
55 for (VariableElement var : method.getParameters()) { | 55 for (VariableElement var : method.getParameters()) { |
56 parseElement(generatedMethods, var); | 56 parseElement(generatedMethods, var); |
57 } | 57 } |
58 parseElement(generatedMethods, method); | 58 parseElement(generatedMethods, method); |