Annotation Interface DenyReplace


@Retention(RUNTIME) @Target(TYPE) public @interface DenyReplace
If a Node subtype is annotated with this annotation then replacement is denied. When replacement is denied an IllegalArgumentException will be thrown on replace. Only final subtypes of type Node may be annotated.

DenyReplace is recommended for uncached or not adoptable nodes that should never be replaceable. Truffle DSL automatically applies this annotation to all uncached versions of specialized nodes and libraries.

Since:
22.2