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 and Description
    `DescriptorBuilder()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and 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>`