public static interface ForeignAccess.Factory
TruffleObject. A Truffle language implementation accesses a TruffleObject via
a Message. The TruffleObject instance provides a ForeignAccess
instance (built via ForeignAccess.create(com.oracle.truffle.api.interop.ForeignAccess.Factory))
that provides an AST snippet for a given Message. Rather than using this generic
Factory, consider implementing ForeignAccess.StandardFactory interface that captures the
set of standard messages each language should implement.| Modifier and Type | Method and Description |
|---|---|
CallTarget |
accessMessage(Message tree)
Provides an AST snippet to access a
TruffleObject. |
boolean |
canHandle(TruffleObject obj)
Checks whether provided
TruffleObject can be accessed using AST snippets produced
by this ForeignAccess.Factory. |
boolean canHandle(TruffleObject obj)
TruffleObject can be accessed using AST snippets produced
by this ForeignAccess.Factory.obj - the object to checkCallTarget accessMessage(Message tree)
TruffleObject.tree - the Message that represents the access to a TruffleObject.TruffleObject, wrapped as a
CallTarget.