Package: org.gradle.api

## [Java] Interface DomainObjectSet<T>

- java.util.Collection

- All Superinterfaces:
    Iterable, DomainObjectCollection, Collection

  A `DomainObjectSet` is a specialisation of DomainObjectCollection that guarantees Set semantics.

  Parameters:
    `` - The type of domain objects in this set.

- - ### Methods Summary

    Methods
    Type | Name and description
    --- | ---
    `Set<T>` | `findAll(Closure spec)` {@inheritDoc}
    `DomainObjectSet<T>` | `matching(Spec<? super T> spec)` {@inheritDoc}
    `DomainObjectSet<T>` | `matching(Closure spec)` {@inheritDoc}
    `DomainObjectSet<S>` | `withType(Class<S> type)` {@inheritDoc}

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `interface DomainObjectCollection` | `all, all, findAll, matching, matching, whenObjectAdded, whenObjectAdded, whenObjectRemoved, whenObjectRemoved, withType, withType, withType`
    `interface Set` | `add, equals, hashCode, clear, contains, isEmpty, size, toArray, toArray, addAll, iterator, remove, containsAll, removeAll, retainAll`

- - ### Method Detail

    - #### public Set<T> findAll(Closure spec)

      {@inheritDoc}

    - #### public DomainObjectSet<T> matching(Spec<? super T> spec)

      {@inheritDoc}

    - #### public DomainObjectSet<T> matching(Closure spec)

      {@inheritDoc}

    - #### public DomainObjectSet<S> withType(Class<S> type)

      {@inheritDoc}