Package: groovy.transform.stc

## [Java] Class FirstParam.Component

- groovy.transform.stc.FirstParam.Component

-     public static class FirstParam.Component
      extends FirstParam

  A hint used to instruct the type checker to pick the type of the component of the first parameter type, which is therefore expected to be an array, like in this example:

  `void <T> doWithArray(T[] array, @ClosureParams(FirstParam.Component.class) Closure c) { array.each { c.call(it)} }`

- - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `public ClassNode[]` | `getParameterTypes(MethodNode node, String[] options, SourceUnit sourceUnit, CompilationUnit unit, ASTNode usage)` Returns the single parameter signature accepted by the hinted closure. Parameters: `node` - the annotated method node `options` - the hint options `sourceUnit` - the current source unit `unit` - the current compilation unit `usage` - the closure expression or related AST node Returns: the inferred parameter types

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class PickAnyArgumentHint` | `getParameterTypes`
    `class SingleSignatureClosureHint` | `getClosureSignatures, getParameterTypes`
    `class ClosureSignatureHint` | `findClassNode, getClosureSignatures, pickGenericType, pickGenericType`

- - ### Method Detail

    - #### public ClassNode[] getParameterTypes(MethodNode node, String[] options, SourceUnit sourceUnit, CompilationUnit unit, ASTNode usage)

      Returns the single parameter signature accepted by the hinted closure.

      Parameters:
        `node` - the annotated method node
        `options` - the hint options
        `sourceUnit` - the current source unit
        `unit` - the current compilation unit
        `usage` - the closure expression or related AST node
      Returns:
        the inferred parameter types