Package com.sun.jna

## Class VarArgsChecker

- java.lang.Object
- - com.sun.jna.VarArgsChecker

-     abstract class VarArgsChecker
      extends java.lang.Object

  Class for checking if a method has vararg parameters. Use method `create()` to create an instance of this class. How the returned instance work depends on the capabilities of the underlying JVM implementation. On older versions of the VM not supporting varargs, the returned VarArgsChecker will always return `false` on calls to `isVarArgs(Method)`.
  Author:
    Max Bureck

- - ### Method Summary

    All Methods Static Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `(package private) static VarArgsChecker` | `create()` | Creates a new instance of a concrete subclass of VarArgsChecker, depending if `Method.isVarArgs()` exists.
    `(package private) abstract int` | `fixedArgs​(java.lang.reflect.Method m)` | If variadic, returns the number of fixed arguments to the method.
    `(package private) abstract boolean` | `isVarArgs​(java.lang.reflect.Method m)` | Checks if the given method was declared to take a variable number of arguments.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### create

          static VarArgsChecker create()

      Creates a new instance of a concrete subclass of VarArgsChecker, depending if `Method.isVarArgs()` exists.
      Returns:
        new instance of concrete VarArgsChecker subclass

    - #### isVarArgs

          abstract boolean isVarArgs​(java.lang.reflect.Method m)

      Checks if the given method was declared to take a variable number of arguments.
      Parameters:
        `m` - Method to be checked
      Returns:
        `true` if the given method takes a variable number of arguments, `false` otherwise.

    - #### fixedArgs

          abstract int fixedArgs​(java.lang.reflect.Method m)

      If variadic, returns the number of fixed arguments to the method.
      Parameters:
        `m` - Method to be checked
      Returns:
        Number of fixed arguments if the given method takes a variable number of arguments, zero otherwise.