Package com.oracle.truffle.api.utilities

## Class CyclicAssumption

- java.lang.Object
- - com.oracle.truffle.api.utilities.CyclicAssumption

    public class CyclicAssumption
    extends java.lang.Object

Holds an `Assumption`, and knows how to recreate it with the same properties on invalidation. Used so that mutability is isolated in this class, and all other classes that need an assumption that may be recreated can have a final reference to an object of this class. Note that you should be careful that repeated invalidations do not cause a deoptimization loop in that same way that you would with any other assumption.

### Constructor Summary

Constructors
`CyclicAssumption​(java.lang.String name)`

### Method Summary

All Methods Instance Methods Concrete Methods
`Assumption` `getAssumption()`
`void` `invalidate()`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### CyclicAssumption

    public CyclicAssumption​(java.lang.String name)

### Method Detail

#### invalidate

    public void invalidate()

#### getAssumption

    public Assumption getAssumption()