Package org.gradle.api.attributes

## Interface AttributeCompatibilityRule<T>

- Type Parameters:
    `T` - The attribute value type.
  All Superinterfaces:
    `Action<CompatibilityCheckDetails<T>>`

      @Incubating
      public interface AttributeCompatibilityRule<T>
      extends Action<CompatibilityCheckDetails<T>>

  A rule that determines whether a given attribute value is compatible some provided attribute value.

  The provided `CompatibilityCheckDetails` will give access to consumer and producer values and allow implementation mark the producer value as compatible or not.

  Note that the rule will never receive a `CompatibilityCheckDetails` that has `equal` consumer and producer values as this check is performed before invoking the rule and assumes compatiblity in that case.

  Since:
    4.0
  See Also:
    `CompatibilityCheckDetails`

- - ### Method Summary

    - ### Methods inherited from interface org.gradle.api.Action

      `execute`