diff graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateMethod.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 06a7cd6aaf00
line wrap: on
line diff
--- a/graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateMethod.java	Thu Jan 17 17:21:16 2013 +0100
+++ b/graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateMethod.java	Fri Jan 18 13:28:12 2013 +0100
@@ -26,13 +26,15 @@
 
 public class TemplateMethod {
 
+    private final Template template;
     private final MethodSpec specification;
     private final ExecutableElement method;
     private final AnnotationMirror markerAnnotation;
     private final ActualParameter returnType;
     private final ActualParameter[] parameters;
 
-    public TemplateMethod(MethodSpec specification, ExecutableElement method, AnnotationMirror markerAnnotation, ActualParameter returnType, ActualParameter[] parameters) {
+    public TemplateMethod(Template template, MethodSpec specification, ExecutableElement method, AnnotationMirror markerAnnotation, ActualParameter returnType, ActualParameter[] parameters) {
+        this.template = template;
         this.specification = specification;
         this.method = method;
         this.markerAnnotation = markerAnnotation;
@@ -41,6 +43,7 @@
     }
 
     public TemplateMethod(TemplateMethod method) {
+        this.template = method.template;
         this.specification = method.specification;
         this.method = method.method;
         this.markerAnnotation = method.markerAnnotation;
@@ -48,6 +51,9 @@
         this.parameters = method.parameters;
     }
 
+    public Template getTemplate() {
+        return template;
+    }
 
     public MethodSpec getSpecification() {
         return specification;