Package com.google.web.bindery.requestfactory.apt

## Class ReferredTypesCollector

- java.lang.Object
- - javax.lang.model.util.AbstractElementVisitor6<R,​P>
  - - javax.lang.model.util.ElementScanner6<R,​State>
    - - com.google.web.bindery.requestfactory.apt.ScannerBase<T>
      - - com.google.web.bindery.requestfactory.apt.ExtraTypesScanner<java.lang.Void>
        - - com.google.web.bindery.requestfactory.apt.ReferredTypesCollector

- All Implemented Interfaces:
    `javax.lang.model.element.ElementVisitor<java.lang.Void,​State>`

      class ReferredTypesCollector
      extends ExtraTypesScanner<java.lang.Void>

  Given a RequestFactory interface, return all RequestContext and proxy types transitively referenced.

- - ### Field Summary

    - ### Fields inherited from class javax.lang.model.util.ElementScanner6

      `DEFAULT_VALUE`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static java.util.Set<javax.lang.model.element.TypeElement>` | `collect​(javax.lang.model.element.TypeElement requestFactory, State state)` | Collect all RequestContext and proxy types reachable from the given RequestFactory.
    `protected void` | `scanExtraType​(javax.lang.model.element.TypeElement extraType)` |
    `java.lang.Void` | `visitExecutable​(javax.lang.model.element.ExecutableElement x, State state)` |
    `java.lang.Void` | `visitType​(javax.lang.model.element.TypeElement x, State state)` |

    - ### Methods inherited from class com.google.web.bindery.requestfactory.apt.ExtraTypesScanner

      `checkForAnnotation, checkForAnnotation`

    - ### Methods inherited from class com.google.web.bindery.requestfactory.apt.ScannerBase

      `isGetter, isSetter, poisonIfAnnotationPresent, scan, scanAllInheritedMethods, shouldIgnore, viewIn`

    - ### Methods inherited from class javax.lang.model.util.ElementScanner6

      `scan, scan, visitPackage, visitTypeParameter, visitVariable`

    - ### Methods inherited from class javax.lang.model.util.AbstractElementVisitor6

      `visit, visit, visitModule, visitUnknown`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### collect

          public static java.util.Set<javax.lang.model.element.TypeElement> collect​(javax.lang.model.element.TypeElement requestFactory,
                                                                                    State state)

      Collect all RequestContext and proxy types reachable from the given RequestFactory.

    - #### visitExecutable

          public java.lang.Void visitExecutable​(javax.lang.model.element.ExecutableElement x,
                                                State state)

      Specified by:
        `visitExecutable` in interface `javax.lang.model.element.ElementVisitor<java.lang.Void,​State>`
      Overrides:
        `visitExecutable` in class `javax.lang.model.util.ElementScanner6<java.lang.Void,​State>`

    - #### visitType

          public java.lang.Void visitType​(javax.lang.model.element.TypeElement x,
                                          State state)

      Specified by:
        `visitType` in interface `javax.lang.model.element.ElementVisitor<java.lang.Void,​State>`
      Overrides:
        `visitType` in class `javax.lang.model.util.ElementScanner6<java.lang.Void,​State>`

    - #### scanExtraType

          protected void scanExtraType​(javax.lang.model.element.TypeElement extraType)

      Specified by:
        `scanExtraType` in class `ExtraTypesScanner<java.lang.Void>`