Package: groovy.org.codenarc.rule.design

## [Groovy] Class ImplementationAsTypeRule

- groovy.org.codenarc.rule.design.ImplementationAsTypeRule

- Checks for use of the following concrete classes when specifying the type of a method parameter, closure parameter, constructor parameter, method return type or field type (the associated interfaces should be used to specify the type instead):

  - java.util.ArrayList
  - java.util.GregorianCalendar
  - java.util.HashMap
  - java.util.HashSet
  - java.util.Hashtable
  - java.util.LinkedHashMap
  - java.util.LinkedHashSet
  - java.util.LinkedList
  - java.util.TreeMap
  - java.util.TreeSet
  - java.util.Vector
  - java.util.concurrent.ArrayBlockingQueue
  - java.util.concurrent.ConcurrentHashMap
  - java.util.concurrent.ConcurrentLinkedQueue
  - java.util.concurrent.CopyOnWriteArrayList
  - java.util.concurrent.CopyOnWriteArraySet
  - java.util.concurrent.DelayQueue
  - java.util.concurrent.LinkedBlockingQueue
  - java.util.concurrent.PriorityBlockingQueue
  - java.util.concurrent.PriorityQueue
  - java.util.concurrent.SynchronousQueue
  Authors:
    Chris Mair
    Hamlet D'Arcy

- - ### Properties Summary

    Properties
    Type | Name and description
    --- | ---
    `Class` | `astVisitorClass`
    `String` | `name`
    `int` | `priority`

- - ### Property Detail

    - #### Class astVisitorClass

    - #### String name

    - #### int priority