+ @Override
+ public void except(Throwable t) {
+ if(DebugPolicy.QUERY_STATE) System.out.println("[QUERY STATE]: excepted " + this);
+ if(statusOrException != DISCARDED) {
+ statusOrException = EXCEPTED;
+ result = t;
+ } else {
+ result = t;
+ }
+ assert(isExcepted());
+ }
+
+ @Override
+ public void setResult(Object result) {
+ super.setResult(result);
+ assert(!(result instanceof Throwable));
+ assert(!isExcepted());
+ }
+