Annotation Type ArgumentHint


@PublicEvolving @Retention(RUNTIME) @Target({TYPE,METHOD,FIELD,PARAMETER}) public @interface ArgumentHint
A hint that provides additional information about an argument.

An ArgumentHint can be used to provide hints about the name, optionality, and data type of argument.

For example, @ArgumentHint(name = "in1", type = @DataTypeHint("STRING"), isOptional = false) is a scalar argument with the data type STRING, named "in1", and cannot be omitted when calling.

See Also:
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    boolean
    Specifies whether the argument is optional or required.
    The name of the argument.
    The data type hint for the argument.
    The kind of the argument.
  • Element Details

    • value

      ArgumentTrait[] value
      The kind of the argument.

      Only applies to ProcessTableFunctions (PTFs). Others can only take scalar values.

      Default:
      {SCALAR}
    • name

      String name
      The name of the argument. It must be unique among other arguments.

      This can be used to provide a descriptive name for the argument.

      Default:
      ""
    • isOptional

      boolean isOptional
      Specifies whether the argument is optional or required.

      If set to true, the argument is considered optional.And if the user does not specify this parameter when calling, 'null' will be passed in. By default, an argument is considered required.

      Default:
      false
    • type

      The data type hint for the argument.

      This can be used to provide additional information about the expected data type of the argument. The DataTypeHint annotation can be used to specify the data type explicitly or provide hints for the reflection-based extraction of the data type.

      Default:
      @org.apache.flink.table.annotation.DataTypeHint