Class NFIContextExtension
java.lang.Object
com.oracle.truffle.llvm.runtime.NativeContextExtension
com.oracle.truffle.llvm.nativemode.runtime.NFIContextExtension
- All Implemented Interfaces:
com.oracle.truffle.llvm.runtime.ContextExtension
public final class NFIContextExtension
extends com.oracle.truffle.llvm.runtime.NativeContextExtension
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class com.oracle.truffle.llvm.runtime.NativeContextExtension
com.oracle.truffle.llvm.runtime.NativeContextExtension.NativeLookupResult, com.oracle.truffle.llvm.runtime.NativeContextExtension.NativePointerIntoLibrary, com.oracle.truffle.llvm.runtime.NativeContextExtension.UnsupportedNativeTypeException, com.oracle.truffle.llvm.runtime.NativeContextExtension.WellKnownNativeFunctionAndSignature, com.oracle.truffle.llvm.runtime.NativeContextExtension.WellKnownNativeFunctionNodeNested classes/interfaces inherited from interface com.oracle.truffle.llvm.runtime.ContextExtension
com.oracle.truffle.llvm.runtime.ContextExtension.Key<C extends com.oracle.truffle.llvm.runtime.ContextExtension>, com.oracle.truffle.llvm.runtime.ContextExtension.Registry -
Method Summary
Modifier and TypeMethodDescriptionvoidaddLibraryHandles(Object library) bindSignature(long fnPtr, com.oracle.truffle.api.source.Source signatureSource) bindSignature(com.oracle.truffle.llvm.runtime.LLVMFunctionCode function, com.oracle.truffle.api.source.Source signatureSource) com.oracle.truffle.api.CallTargetcreateNativeWrapperFactory(com.oracle.truffle.llvm.runtime.LLVMFunctionCode code, String backend) createSignature(com.oracle.truffle.api.source.Source signatureSource) getNativeFunction(String name, String signature) com.oracle.truffle.llvm.runtime.NativeContextExtension.NativeLookupResultcom.oracle.truffle.llvm.runtime.NativeContextExtension.NativePointerIntoLibrarygetNativeHandle(String name) static Stringstatic StringgetNativeLibrarySuffixVersioned(int version) getNativeSignature(com.oracle.truffle.llvm.runtime.types.FunctionType type) com.oracle.truffle.api.source.SourcegetNativeSignatureSourceSkipStackArg(com.oracle.truffle.llvm.runtime.types.FunctionType type) com.oracle.truffle.llvm.runtime.NativeContextExtension.WellKnownNativeFunctionNodegetWellKnownNativeFunction(String name, String signature) com.oracle.truffle.llvm.runtime.NativeContextExtension.WellKnownNativeFunctionAndSignaturegetWellKnownNativeFunctionAndSignature(String name, String signature) voidinitialize(com.oracle.truffle.llvm.runtime.LLVMContext context) booleancom.oracle.truffle.api.CallTargetparseNativeLibrary(String path, com.oracle.truffle.llvm.runtime.LLVMContext context) Methods inherited from class com.oracle.truffle.llvm.runtime.NativeContextExtension
getNativeLibrary, getNativeLibraryPrefix, getNativeLibraryVersioned
-
Method Details
-
initialize
public void initialize(com.oracle.truffle.llvm.runtime.LLVMContext context) -
isInitialized
public boolean isInitialized() -
getNativeHandle
public com.oracle.truffle.llvm.runtime.NativeContextExtension.NativePointerIntoLibrary getNativeHandle(String name) - Specified by:
getNativeHandlein classcom.oracle.truffle.llvm.runtime.NativeContextExtension
-
createNativeWrapperFactory
public com.oracle.truffle.api.CallTarget createNativeWrapperFactory(com.oracle.truffle.llvm.runtime.LLVMFunctionCode code, String backend) - Specified by:
createNativeWrapperFactoryin classcom.oracle.truffle.llvm.runtime.NativeContextExtension
-
addLibraryHandles
- Specified by:
addLibraryHandlesin classcom.oracle.truffle.llvm.runtime.NativeContextExtension
-
parseNativeLibrary
public com.oracle.truffle.api.CallTarget parseNativeLibrary(String path, com.oracle.truffle.llvm.runtime.LLVMContext context) throws UnsatisfiedLinkError - Specified by:
parseNativeLibraryin classcom.oracle.truffle.llvm.runtime.NativeContextExtension- Throws:
UnsatisfiedLinkError
-
getNativeLibrarySuffix
-
getNativeLibrarySuffixVersioned
-
getNativeFunctionOrNull
public com.oracle.truffle.llvm.runtime.NativeContextExtension.NativeLookupResult getNativeFunctionOrNull(String name) - Specified by:
getNativeFunctionOrNullin classcom.oracle.truffle.llvm.runtime.NativeContextExtension
-
getNativeFunction
-
getWellKnownNativeFunction
-
getWellKnownNativeFunctionAndSignature
-
getNativeSignatureSourceSkipStackArg
public com.oracle.truffle.api.source.Source getNativeSignatureSourceSkipStackArg(com.oracle.truffle.llvm.runtime.types.FunctionType type) throws com.oracle.truffle.llvm.runtime.NativeContextExtension.UnsupportedNativeTypeException - Specified by:
getNativeSignatureSourceSkipStackArgin classcom.oracle.truffle.llvm.runtime.NativeContextExtension- Throws:
com.oracle.truffle.llvm.runtime.NativeContextExtension.UnsupportedNativeTypeException
-
createSignature
- Specified by:
createSignaturein classcom.oracle.truffle.llvm.runtime.NativeContextExtension
-
bindSignature
public Object bindSignature(com.oracle.truffle.llvm.runtime.LLVMFunctionCode function, com.oracle.truffle.api.source.Source signatureSource) - Specified by:
bindSignaturein classcom.oracle.truffle.llvm.runtime.NativeContextExtension
-
bindSignature
- Specified by:
bindSignaturein classcom.oracle.truffle.llvm.runtime.NativeContextExtension
-
getNativeSignature
- Specified by:
getNativeSignaturein classcom.oracle.truffle.llvm.runtime.NativeContextExtension
-