Package jnr.ffi.provider.jffi
Class FastIntMethodGenerator
- java.lang.Object
-
- jnr.ffi.provider.jffi.BaseMethodGenerator
-
- jnr.ffi.provider.jffi.AbstractFastNumericMethodGenerator
-
- jnr.ffi.provider.jffi.FastIntMethodGenerator
-
- All Implemented Interfaces:
MethodGenerator
final class FastIntMethodGenerator extends AbstractFastNumericMethodGenerator
-
-
Field Summary
Fields Modifier and Type Field Description private static boolean
ENABLED
private static int
MAX_FASTINT_PARAMETERS
private static java.lang.String[]
methodNames
private static java.lang.String[]
signatures
-
Fields inherited from class jnr.ffi.provider.jffi.AbstractFastNumericMethodGenerator
STRATEGY_ADDRESS_METHODS, STRATEGY_PARAMETER_TYPES
-
-
Constructor Summary
Constructors Constructor Description FastIntMethodGenerator()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) java.lang.String
getInvokerMethodName(ResultType resultType, ParameterType[] parameterTypes, boolean ignoreErrno)
(package private) java.lang.String
getInvokerSignature(int parameterCount, java.lang.Class nativeIntType)
(package private) java.lang.Class
getInvokerType()
(package private) static int
getMaximumFastIntParameters()
(package private) static boolean
isFastIntParameter(com.kenai.jffi.Platform platform, ParameterType parameterType)
(package private) static boolean
isFastIntResult(com.kenai.jffi.Platform platform, ResultType resultType)
(package private) static boolean
isFastIntType(com.kenai.jffi.Platform platform, SigType type)
boolean
isSupported(ResultType resultType, ParameterType[] parameterTypes, CallingConvention callingConvention)
private static boolean
isSupportedPointerParameterType(java.lang.Class javaParameterType)
-
Methods inherited from class jnr.ffi.provider.jffi.AbstractFastNumericMethodGenerator
emitDirectCheck, emitParameterStrategyAddress, emitParameterStrategyLookup, generate, getObjectParameterMethodName, getObjectParameterMethodSignature, hasPointerParameterStrategy
-
Methods inherited from class jnr.ffi.provider.jffi.BaseMethodGenerator
emitEpilogue, emitPostInvoke, generate, isPostInvokeRequired, loadAndConvertParameter
-
-
-
-
Method Detail
-
getInvokerMethodName
java.lang.String getInvokerMethodName(ResultType resultType, ParameterType[] parameterTypes, boolean ignoreErrno)
- Specified by:
getInvokerMethodName
in classAbstractFastNumericMethodGenerator
-
getInvokerSignature
java.lang.String getInvokerSignature(int parameterCount, java.lang.Class nativeIntType)
- Specified by:
getInvokerSignature
in classAbstractFastNumericMethodGenerator
-
getInvokerType
final java.lang.Class getInvokerType()
- Specified by:
getInvokerType
in classAbstractFastNumericMethodGenerator
-
isSupported
public boolean isSupported(ResultType resultType, ParameterType[] parameterTypes, CallingConvention callingConvention)
-
getMaximumFastIntParameters
static int getMaximumFastIntParameters()
-
isFastIntType
static boolean isFastIntType(com.kenai.jffi.Platform platform, SigType type)
-
isSupportedPointerParameterType
private static boolean isSupportedPointerParameterType(java.lang.Class javaParameterType)
-
isFastIntResult
static boolean isFastIntResult(com.kenai.jffi.Platform platform, ResultType resultType)
-
isFastIntParameter
static boolean isFastIntParameter(com.kenai.jffi.Platform platform, ParameterType parameterType)
-
-