Package org.gradle.api.attributes

# Interface AttributeCompatibilityRule<T>

Type Parameters:
  `T` - The attribute value type.

All Superinterfaces:
  `Action<CompatibilityCheckDetails<T>>`

All Known Implementing Classes:
  `SwiftBasePlugin.SwiftCppUsageCompatibilityRule`

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 compatibility in that case.

Since:
  4.0
See Also:
  - `CompatibilityCheckDetails`

- ## Method Summary

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

  `execute`