Mercurial > hg > graal-jvmci-8
comparison graal/com.oracle.truffle.api.dsl/src/com/oracle/truffle/api/dsl/Specialization.java @ 19305:48bdad77afcd
Truffle-DSL: assumptions javadoc fixes.
author | Christian Humer <christian.humer@gmail.com> |
---|---|
date | Wed, 11 Feb 2015 21:51:26 +0100 |
parents | 67ab244ab689 |
children |
comparison
equal
deleted
inserted
replaced
19304:6135f3a3fa45 | 19305:48bdad77afcd |
---|---|
262 /** | 262 /** |
263 * <p> | 263 * <p> |
264 * Declares assumption guards that optimistically assume that the state of an {@link Assumption} | 264 * Declares assumption guards that optimistically assume that the state of an {@link Assumption} |
265 * remains valid. Assumption expressions are cached once per specialization instantiation. If | 265 * remains valid. Assumption expressions are cached once per specialization instantiation. If |
266 * one of the returned assumptions gets invalidated then the specialization instance is removed. | 266 * one of the returned assumptions gets invalidated then the specialization instance is removed. |
267 * An assumption expression may return different assumptions per specialization instance. The | 267 * If the assumption expression returns an array of assumptions then all assumptions of the |
268 * returned assumption instance must not be <code>null</code>. | 268 * array are checked. This is limited to one-dimensional arrays. |
269 * </p> | 269 * </p> |
270 * <p> | 270 * <p> |
271 * Assumption expressions are defined using a subset of Java. This subset includes | 271 * Assumption expressions are defined using a subset of Java. This subset includes |
272 * field/parameter accesses, function calls, type exact infix comparisons (==, !=, <, <=, >, | 272 * field/parameter accesses, function calls, type exact infix comparisons (==, !=, <, <=, >, |
273 * >=), logical negation (!), logical disjunction (||) and integer literals. The return type of | 273 * >=), logical negation (!), logical disjunction (||) and integer literals. The return type of |
274 * the expression must be {@link Assumption}. Assumption expressions are not allowed to bind to | 274 * the expression must be {@link Assumption} or an array of {@link Assumption} instances. |
275 * dynamic parameter values of the specialization. Bound elements without receivers are resolved | 275 * Assumption expressions are not allowed to bind to dynamic parameter values of the |
276 * using the following order: | 276 * specialization. Bound elements without receivers are resolved using the following order: |
277 * <ol> | 277 * <ol> |
278 * <li>Cached parameters of the enclosing specialization.</li> | 278 * <li>Cached parameters of the enclosing specialization.</li> |
279 * <li>Fields defined using {@link NodeField} for the enclosing node.</li> | 279 * <li>Fields defined using {@link NodeField} for the enclosing node.</li> |
280 * <li>Non-private, static or virtual methods or fields of enclosing node.</li> | 280 * <li>Non-private, static or virtual methods or fields of enclosing node.</li> |
281 * <li>Non-private, static or virtual methods or fields of super types of the enclosing node.</li> | 281 * <li>Non-private, static or virtual methods or fields of super types of the enclosing node.</li> |