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
`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>`