@Retention(value=RUNTIME) @Target(value=TYPE) public static @interface TruffleInstrument.Registration
instrument implementations for
automatic discovery.| Modifier and Type | Optional Element and Description |
|---|---|
String |
id
A custom machine identifier for this instrument.
|
boolean |
internal
Specifies whether the instrument is accessible using the polyglot API.
|
String |
name
The name of the instrument in an arbitrary format for humans.
|
org.graalvm.polyglot.SandboxPolicy |
sandbox
Specifies the most strict sandbox policy in which the instrument can be used.
|
Class<?>[] |
services
Declarative list of classes this instrument is known to provide.
|
String |
version
The version for instrument in an arbitrary format.
|
String |
website
A link to a website with more information about the instrument.
|
public abstract String id
public abstract String name
public abstract String version
Engine.getVersion() by default.public abstract boolean internal
public abstract Class<?>[] services
onCreate
method and instantiate and register all
here in defined services.
Instruments automatically get created when their registered
service is requested.
public abstract String website
The link can contain the following substitutions:
${graalvm-version}${graalvm-version:format}. See Version.format(java.lang.String).
${graalvm-website-version}public abstract org.graalvm.polyglot.SandboxPolicy sandbox
ISOLATED policy, it can be used in an
engine configured with sandbox policy TRUSTED, CONSTRAINED or
ISOLATED. But it cannot be used in an engine configured with the
UNTRUSTED sandbox policy.SandboxPolicy