Package com.google.javascript.rhino.jstype

# Class ModificationVisitor

java.lang.Object
com.google.javascript.rhino.jstype.ModificationVisitor

All Implemented Interfaces:
  `Visitor<JSType>`

public class ModificationVisitor extends Object implements Visitor<JSType>
A visitor implementation that enables type substitutions.

## Constructor Summary

Constructors
Constructor
Description
`ModificationVisitor(JSTypeRegistry registry)`

## Method Summary

Modifier and Type
Method
Description
`JSType`
`caseAllType()`
All type's case.
`JSType`
`caseBooleanType()`
Boolean value type's case.
`JSType`
`caseEnumElementType(EnumElementType type)`
Enum element type's case.
`JSType`
`caseFunctionType(FunctionType type)`
Function type's case.
`JSType`
`caseNoObjectType()`
Bottom Object type's case.
`JSType`
`caseNoType()`
Bottom type's case.
`JSType`
`caseNullType()`
Null type's case.
`JSType`
`caseNumberType()`
Number value type's case.
`JSType`
`caseObjectType(ObjectType objType)`
Object type's case.
`JSType`
`caseStringType()`
String value type's case.
`JSType`
`caseTemplateType(TemplateType type)`
Template type's case.
`JSType`
`caseTemplatizedType(TemplatizedType type)`
Templatized type's case.
`JSType`
`caseUnionType(UnionType type)`
Union type's case.
`JSType`
`caseUnknownType()`
Unknown type's case.
`JSType`
`caseVoidType()`
Void type's case.

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

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

## Constructor Details

### ModificationVisitor

public ModificationVisitor(JSTypeRegistry registry)

## Method Details

### caseNoType

public JSType caseNoType()
Description copied from interface: `Visitor`
Bottom type's case.

Specified by:
  `caseNoType` in interface `Visitor<JSType>`

### caseEnumElementType

public JSType caseEnumElementType(EnumElementType type)
Description copied from interface: `Visitor`
Enum element type's case.

Specified by:
  `caseEnumElementType` in interface `Visitor<JSType>`

### caseAllType

public JSType caseAllType()
Description copied from interface: `Visitor`
All type's case.

Specified by:
  `caseAllType` in interface `Visitor<JSType>`

### caseBooleanType

public JSType caseBooleanType()
Description copied from interface: `Visitor`
Boolean value type's case.

Specified by:
  `caseBooleanType` in interface `Visitor<JSType>`

### caseNoObjectType

public JSType caseNoObjectType()
Description copied from interface: `Visitor`
Bottom Object type's case.

Specified by:
  `caseNoObjectType` in interface `Visitor<JSType>`

### caseFunctionType

public JSType caseFunctionType(FunctionType type)
Description copied from interface: `Visitor`
Function type's case.

Specified by:
  `caseFunctionType` in interface `Visitor<JSType>`

### caseObjectType

public JSType caseObjectType(ObjectType objType)
Description copied from interface: `Visitor`
Object type's case.

Specified by:
  `caseObjectType` in interface `Visitor<JSType>`

### caseTemplatizedType

public JSType caseTemplatizedType(TemplatizedType type)
Description copied from interface: `Visitor`
Templatized type's case.

Specified by:
  `caseTemplatizedType` in interface `Visitor<JSType>`

### caseUnknownType

public JSType caseUnknownType()
Description copied from interface: `Visitor`
Unknown type's case.

Specified by:
  `caseUnknownType` in interface `Visitor<JSType>`

### caseNullType

public JSType caseNullType()
Description copied from interface: `Visitor`
Null type's case.

Specified by:
  `caseNullType` in interface `Visitor<JSType>`

### caseNumberType

public JSType caseNumberType()
Description copied from interface: `Visitor`
Number value type's case.

Specified by:
  `caseNumberType` in interface `Visitor<JSType>`

### caseStringType

public JSType caseStringType()
Description copied from interface: `Visitor`
String value type's case.

Specified by:
  `caseStringType` in interface `Visitor<JSType>`

### caseVoidType

public JSType caseVoidType()
Description copied from interface: `Visitor`
Void type's case.

Specified by:
  `caseVoidType` in interface `Visitor<JSType>`

### caseUnionType

public JSType caseUnionType(UnionType type)
Description copied from interface: `Visitor`
Union type's case.

Specified by:
  `caseUnionType` in interface `Visitor<JSType>`

### caseTemplateType

public JSType caseTemplateType(TemplateType type)
Description copied from interface: `Visitor`
Template type's case.

Specified by:
  `caseTemplateType` in interface `Visitor<JSType>`