Top Description Methods
com.oracle.svm.core.annotate

public @Interface Substitute

extends Annotation
Annotations
@Retention:RUNTIME
@Target:METHOD, CONSTRUCTOR, TYPE, FIELD
@Platforms:HOSTED_ONLY
Imports
java.lang.annotation.ElementType, .Retention, .RetentionPolicy, .Target, org.graalvm.nativeimage.Platform, .Platforms

When used to annotate a method, it indicates that a method declaration is intended to be a substitute for a method declaration in another class. A substitute method must be declared in a class annotated with TargetClass as the value element of that annotation specifies the class containing the method to be substituted (the substitutee class).

The method to be substituted is determined based on a name and a list of parameter types. The name is specified by an optional TargetElement#name() element of this annotation. If this element is not specified, then the name of the substitution method is used. The parameter types are those of the substitution method.

There must never be an explicit call to a non-static method annotated with Substitute unless it is from another non-static method in the same class.

When used to annotate a class, it indicates that the class is intended to be a full substitute for the class specified via TargetClass. All methods in the target class that are not substituted in the annotated class are implicitly treated as Deleted.

See TargetClass for an overview of the annotation system.

Since
22.3

Method Summary

Modifier and TypeMethod and Description
public boolean
Inherited from java.lang.annotation.Annotation:
annotationTypeequalshashCodetoString

Method Detail

polymorphicSignatureback to summary
public boolean polymorphicSignature()
Since
22.3