See: Description
Interface | Description |
---|---|
LibraryExport.DelegateExport |
Internal interface for generated code only.
|
Class | Description |
---|---|
DynamicDispatchLibrary |
A library that allows to dynamically dispatch to export library classes.
|
Library |
Base class for all Truffle library specifications.
|
LibraryExport<T extends Library> |
Base class for generated export classes.
|
LibraryFactory<T extends Library> |
Library factories allow to create instances of libraries used to call library messages.
|
Message |
Represents a description of library message.
|
ReflectionLibrary |
The reflection library allows to send to and proxy messages of receivers.
|
Annotation Type | Description |
---|---|
CachedLibrary |
The cached library annotation allows to use
Truffle
Libraries conveniently in specializations or exported messages . |
ExportLibrary |
Allows to export messages of Truffle libraries.
|
ExportLibrary.Repeat |
Repeat annotation for
ExportLibrary . |
ExportMessage |
Exports the annotated method or class as library message.
|
ExportMessage.Ignore |
Explicitly ignores warning messages originating from the
ExportLibrary annotation. |
ExportMessage.Repeat | |
GenerateLibrary |
Libraries are specified with
public and abstract Java classes that
extend the Library class and are annotated by @GenerateLibrary . |
GenerateLibrary.Abstract |
Makes a library message abstract, but allows to keep a default implementation.
|
GenerateLibrary.DefaultExport |
Specifies
library implementations provided by default as a fallback. |
GenerateLibrary.DefaultExport.Repeat |
Before reading the javadoc make sure you have read the tutorial .
Start learning Truffle Libraries by reading the following articles:
Libraries
specify the set of available
messages i.e. the protocol.
Exports
implement a library for a
receiver type.
specialization
DSL.
Advanced Features:
ReflectionLibrary
allows to reflectively export
and call messages without binary dependency to a library. It also allows to implement library
agnostic proxies.
DynamicDispatchLibrary
allows to implement
receivers that dynamically dispatch to exported message implementations.
To specify libraries
,
To export libraries
,
To dispatch libraries from nodes
,
To manually dispatch messages