# HG changeset patch # User Christian Humer # Date 1423687886 -3600 # Node ID 48bdad77afcdb8bb1c2591b6e78b93203ceadb59 # Parent 6135f3a3fa45e106aa2b10f6ad3b3d464af901ae Truffle-DSL: assumptions javadoc fixes. diff -r 6135f3a3fa45 -r 48bdad77afcd graal/com.oracle.truffle.api.dsl/src/com/oracle/truffle/api/dsl/Specialization.java --- a/graal/com.oracle.truffle.api.dsl/src/com/oracle/truffle/api/dsl/Specialization.java Wed Feb 11 19:29:35 2015 +0100 +++ b/graal/com.oracle.truffle.api.dsl/src/com/oracle/truffle/api/dsl/Specialization.java Wed Feb 11 21:51:26 2015 +0100 @@ -264,16 +264,16 @@ * Declares assumption guards that optimistically assume that the state of an {@link Assumption} * remains valid. Assumption expressions are cached once per specialization instantiation. If * one of the returned assumptions gets invalidated then the specialization instance is removed. - * An assumption expression may return different assumptions per specialization instance. The - * returned assumption instance must not be null. + * If the assumption expression returns an array of assumptions then all assumptions of the + * array are checked. This is limited to one-dimensional arrays. *

*

* Assumption expressions are defined using a subset of Java. This subset includes * field/parameter accesses, function calls, type exact infix comparisons (==, !=, <, <=, >, * >=), logical negation (!), logical disjunction (||) and integer literals. The return type of - * the expression must be {@link Assumption}. Assumption expressions are not allowed to bind to - * dynamic parameter values of the specialization. Bound elements without receivers are resolved - * using the following order: + * the expression must be {@link Assumption} or an array of {@link Assumption} instances. + * Assumption expressions are not allowed to bind to dynamic parameter values of the + * specialization. Bound elements without receivers are resolved using the following order: *

    *
  1. Cached parameters of the enclosing specialization.
  2. *
  3. Fields defined using {@link NodeField} for the enclosing node.