comparison graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/TruffleTypes.java @ 11466:4830676526e3

Truffle-DSL: added infrastructure to assert for DSL error messages.
author Christian Humer <christian.humer@gmail.com>
date Thu, 29 Aug 2013 17:39:55 +0200
parents a0309f88306c
children 85b846b31690
comparison
equal deleted inserted replaced
11465:3d618420a4b6 11466:4830676526e3
28 import javax.lang.model.type.*; 28 import javax.lang.model.type.*;
29 import javax.tools.Diagnostic.Kind; 29 import javax.tools.Diagnostic.Kind;
30 30
31 import com.oracle.truffle.api.*; 31 import com.oracle.truffle.api.*;
32 import com.oracle.truffle.api.CompilerDirectives.*; 32 import com.oracle.truffle.api.CompilerDirectives.*;
33 import com.oracle.truffle.api.dsl.*;
33 import com.oracle.truffle.api.frame.*; 34 import com.oracle.truffle.api.frame.*;
34 import com.oracle.truffle.api.nodes.*; 35 import com.oracle.truffle.api.nodes.*;
35 import com.oracle.truffle.api.nodes.Node.Child; 36 import com.oracle.truffle.api.nodes.Node.Child;
36 import com.oracle.truffle.api.nodes.Node.Children; 37 import com.oracle.truffle.api.nodes.Node.Children;
37 38
54 private final DeclaredType nodeInfoKind; 55 private final DeclaredType nodeInfoKind;
55 private final TypeMirror compilerDirectives; 56 private final TypeMirror compilerDirectives;
56 private final TypeMirror compilerAsserts; 57 private final TypeMirror compilerAsserts;
57 private final DeclaredType slowPath; 58 private final DeclaredType slowPath;
58 private final DeclaredType truffleOptions; 59 private final DeclaredType truffleOptions;
60 private final TypeElement expectError;
59 61
60 private final List<String> errors = new ArrayList<>(); 62 private final List<String> errors = new ArrayList<>();
61 63
62 public TruffleTypes(ProcessorContext context) { 64 public TruffleTypes(ProcessorContext context) {
63 node = getRequired(context, Node.class); 65 node = getRequired(context, Node.class);
72 invalidAssumption = getRequired(context, InvalidAssumptionException.class); 74 invalidAssumption = getRequired(context, InvalidAssumptionException.class);
73 nodeInfoAnnotation = getRequired(context, NodeInfo.class); 75 nodeInfoAnnotation = getRequired(context, NodeInfo.class);
74 nodeInfoKind = getRequired(context, NodeInfo.Kind.class); 76 nodeInfoKind = getRequired(context, NodeInfo.Kind.class);
75 slowPath = getRequired(context, SlowPath.class); 77 slowPath = getRequired(context, SlowPath.class);
76 truffleOptions = getRequired(context, TruffleOptions.class); 78 truffleOptions = getRequired(context, TruffleOptions.class);
79 expectError = (TypeElement) getRequired(context, ExpectError.class).asElement();
80 }
81
82 public TypeElement getExpectError() {
83 return expectError;
77 } 84 }
78 85
79 public DeclaredType getNodeInfoAnnotation() { 86 public DeclaredType getNodeInfoAnnotation() {
80 return nodeInfoAnnotation; 87 return nodeInfoAnnotation;
81 } 88 }