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

## Class DescriptorBuilder

- java.lang.Object
- - javax.lang.model.util.AbstractTypeVisitor6<R,​P>
  - - javax.lang.model.util.SimpleTypeVisitor6<java.lang.String,​State>
    - - com.google.web.bindery.requestfactory.apt.DescriptorBuilder

- All Implemented Interfaces:
    `javax.lang.model.type.TypeVisitor<java.lang.String,​State>`

      class DescriptorBuilder
      extends javax.lang.model.util.SimpleTypeVisitor6<java.lang.String,​State>

  Builds descriptors from TypeMirrors for both simple types and methods. Used by `DeobfuscatorBuilder` to construct client-to-server method mappings.

- - ### Field Summary

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

      `DEFAULT_VALUE`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `DescriptorBuilder()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected java.lang.String` | `defaultAction​(javax.lang.model.type.TypeMirror x, State state)` |
    `java.lang.String` | `visitArray​(javax.lang.model.type.ArrayType x, State state)` | Arrays aren't actually used anywhere in RequestFactory, but it's trivial to implement and might be useful later on.
    `java.lang.String` | `visitDeclared​(javax.lang.model.type.DeclaredType x, State state)` |
    `java.lang.String` | `visitExecutable​(javax.lang.model.type.ExecutableType x, State state)` | Only generates the method descriptor, which does not include the method's name.
    `java.lang.String` | `visitNoType​(javax.lang.model.type.NoType x, State state)` |
    `java.lang.String` | `visitPrimitive​(javax.lang.model.type.PrimitiveType x, State state)` |
    `java.lang.String` | `visitTypeVariable​(javax.lang.model.type.TypeVariable x, State state)` |
    `java.lang.String` | `visitWildcard​(javax.lang.model.type.WildcardType x, State state)` |

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

      `visitError, visitNull`

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

      `visit, visit, visitIntersection, visitUnion, visitUnknown`

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

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

- - ### Constructor Detail

    - #### DescriptorBuilder

          DescriptorBuilder()

  - ### Method Detail

    - #### visitArray

          public java.lang.String visitArray​(javax.lang.model.type.ArrayType x,
                                             State state)

      Arrays aren't actually used anywhere in RequestFactory, but it's trivial to implement and might be useful later on.
      Specified by:
        `visitArray` in interface `javax.lang.model.type.TypeVisitor<java.lang.String,​State>`
      Overrides:
        `visitArray` in class `javax.lang.model.util.SimpleTypeVisitor6<java.lang.String,​State>`

    - #### visitDeclared

          public java.lang.String visitDeclared​(javax.lang.model.type.DeclaredType x,
                                                State state)

      Specified by:
        `visitDeclared` in interface `javax.lang.model.type.TypeVisitor<java.lang.String,​State>`
      Overrides:
        `visitDeclared` in class `javax.lang.model.util.SimpleTypeVisitor6<java.lang.String,​State>`

    - #### visitExecutable

          public java.lang.String visitExecutable​(javax.lang.model.type.ExecutableType x,
                                                  State state)

      Only generates the method descriptor, which does not include the method's name.
      Specified by:
        `visitExecutable` in interface `javax.lang.model.type.TypeVisitor<java.lang.String,​State>`
      Overrides:
        `visitExecutable` in class `javax.lang.model.util.SimpleTypeVisitor6<java.lang.String,​State>`

    - #### visitNoType

          public java.lang.String visitNoType​(javax.lang.model.type.NoType x,
                                              State state)

      Specified by:
        `visitNoType` in interface `javax.lang.model.type.TypeVisitor<java.lang.String,​State>`
      Overrides:
        `visitNoType` in class `javax.lang.model.util.SimpleTypeVisitor6<java.lang.String,​State>`

    - #### visitPrimitive

          public java.lang.String visitPrimitive​(javax.lang.model.type.PrimitiveType x,
                                                 State state)

      Specified by:
        `visitPrimitive` in interface `javax.lang.model.type.TypeVisitor<java.lang.String,​State>`
      Overrides:
        `visitPrimitive` in class `javax.lang.model.util.SimpleTypeVisitor6<java.lang.String,​State>`

    - #### visitTypeVariable

          public java.lang.String visitTypeVariable​(javax.lang.model.type.TypeVariable x,
                                                    State state)

      Specified by:
        `visitTypeVariable` in interface `javax.lang.model.type.TypeVisitor<java.lang.String,​State>`
      Overrides:
        `visitTypeVariable` in class `javax.lang.model.util.SimpleTypeVisitor6<java.lang.String,​State>`

    - #### visitWildcard

          public java.lang.String visitWildcard​(javax.lang.model.type.WildcardType x,
                                                State state)

      Specified by:
        `visitWildcard` in interface `javax.lang.model.type.TypeVisitor<java.lang.String,​State>`
      Overrides:
        `visitWildcard` in class `javax.lang.model.util.SimpleTypeVisitor6<java.lang.String,​State>`

    - #### defaultAction

          protected java.lang.String defaultAction​(javax.lang.model.type.TypeMirror x,
                                                   State state)

      Overrides:
        `defaultAction` in class `javax.lang.model.util.SimpleTypeVisitor6<java.lang.String,​State>`