## com.google.javascript.rhino.jstype
Class VoidType

    java.lang.Object
      com.google.javascript.rhino.jstype.JSType
          com.google.javascript.rhino.jstype.VoidType

All Implemented Interfaces:
  Serializable

    public class VoidType

extends JSType

Void type whose only element is the `undefined` value.

See Also:
  Serialized Form

Nested Class Summary

Nested classes/interfaces inherited from class com.google.javascript.rhino.jstype.JSType
`JSType.TypePair`

Field Summary

Fields inherited from class com.google.javascript.rhino.jstype.JSType
`EMPTY_TYPE_COMPONENT, ENUMDECL, NOT_A_CLASS, NOT_A_TYPE, NOT_ENUMDECL, UNKNOWN_NAME`

Method Summary
`String` | `getDisplayName()` Returns a user meaningful label for the JSType instance.
`BooleanLiteralSet` | `getPossibleToBooleanOutcomes()` Computes the set of possible outcomes of the `ToBoolean` predicate for this type.
`boolean` | `hasDisplayName()`
`boolean` | `isVoidType()`
`boolean` | `matchesNumberContext()` This predicate is used to test whether a given type can appear in a numeric context, such as an operand of a multiply operator.
`boolean` | `matchesObjectContext()` This predicate is used to test whether a given type can appear in an `Object` context, such as the expression in a with statement.
`boolean` | `matchesStringContext()` This predicate is used to test whether a given type can appear in a `String` context, such as an operand of a string concat (+) operator.
`JSType` | `restrictByNotNullOrUndefined()` If this is a union type, returns a union type that does not include the null or undefined type.
`TernaryValue` | `testForEquality(JSType that)` Compares `this` and `that`.

`

`<T> T`

`

`visit(Visitor<T> visitor)`
Visit this type with the given visitor.

Methods inherited from class com.google.javascript.rhino.jstype.JSType

`autobox, autoboxesTo, canAssignTo, canBeCalled, canTestForEqualityWith, canTestForShallowEqualityWith, clearResolved, collapseUnion, dereference, differsFrom, equals, findPropertyType, forceResolve, getGreatestSubtype, getJSDocInfo, getLeastSupertype, getRestrictedTypeGivenToBooleanOutcome, getTypesUnderEquality, getTypesUnderInequality, getTypesUnderShallowEquality, getTypesUnderShallowInequality, hashCode, isAllType, isArrayType, isBooleanObjectType, isBooleanValueType, isCheckedUnknownType, isConstructor, isDateType, isEmptyType, isEnumElementType, isEnumType, isEquivalent, isEquivalentTo, isFunctionPrototypeType, isFunctionType, isGlobalThisType, isInstanceType, isInterface, isNominalConstructor, isNominalType, isNoObjectType, isNoResolvedType, isNoType, isNullable, isNullType, isNumber, isNumberObjectType, isNumberValueType, isObject, isOrdinaryFunction, isRecordType, isRegexpType, isResolved, isString, isStringObjectType, isStringValueType, isSubtype, isTemplateType, isUnionType, isUnknownType, matchConstraint, matchesInt32Context, matchesUint32Context, resolve, setValidator, toAnnotationString, toDebugHashCodeString, toMaybeEnumElementType, toMaybeEnumType, toMaybeFunctionType, toMaybeFunctionType, toMaybeUnionType, toObjectType, toString, unboxesTo`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Method Detail

### restrictByNotNullOrUndefined

    public JSType restrictByNotNullOrUndefined()

  Description copied from class: `JSType`
  If this is a union type, returns a union type that does not include the null or undefined type.

  Overrides:
    `restrictByNotNullOrUndefined` in class `JSType`

### testForEquality

    public TernaryValue testForEquality(JSType that)

  Description copied from class: `JSType`
  Compares `this` and `that`.

  Overrides:
    `testForEquality` in class `JSType`
  Returns:
    - `TernaryValue.TRUE` if the comparison of values of `this` type and `that` always succeed (such as `undefined` compared to `null`)
    - `TernaryValue.FALSE` if the comparison of values of `this` type and `that` always fails (such as `undefined` compared to `number`)
    - `TernaryValue.UNKNOWN` if the comparison can succeed or fail depending on the concrete values

### matchesNumberContext

    public boolean matchesNumberContext()

  Description copied from class: `JSType`
  This predicate is used to test whether a given type can appear in a numeric context, such as an operand of a multiply operator.

  Overrides:
    `matchesNumberContext` in class `JSType`

### matchesObjectContext

    public boolean matchesObjectContext()

  Description copied from class: `JSType`
  This predicate is used to test whether a given type can appear in an `Object` context, such as the expression in a with statement. Most types we will encounter, except notably `null`, have at least the potential for converting to `Object`. Host defined objects can get peculiar.

  Overrides:
    `matchesObjectContext` in class `JSType`

### matchesStringContext

    public boolean matchesStringContext()

  Description copied from class: `JSType`
  This predicate is used to test whether a given type can appear in a `String` context, such as an operand of a string concat (+) operator. All types have at least the potential for converting to `String`. When we add externally defined types, such as a browser OM, we may choose to add types that do not automatically convert to `String`.

  Overrides:
    `matchesStringContext` in class `JSType`

### isVoidType

    public boolean isVoidType()

  Overrides:
    `isVoidType` in class `JSType`

### getDisplayName

    public String getDisplayName()

  Description copied from class: `JSType`
  Returns a user meaningful label for the JSType instance. For example, Functions and Enums will return their declaration name (if they have one). Some types will not have a meaningful display name. Calls to hasDisplayName() will return true IFF getDisplayName() will return null or a zero length string.

  Overrides:
    `getDisplayName` in class `JSType`
  Returns:
    the display name of the type, or null if one is not available

### getPossibleToBooleanOutcomes

    public BooleanLiteralSet getPossibleToBooleanOutcomes()

  Description copied from class: `JSType`
  Computes the set of possible outcomes of the `ToBoolean` predicate for this type. The `ToBoolean` predicate is defined by the ECMA-262 standard, 3rd edition. Its behavior for simple types can be summarized by the following table:

  type | result
  --- | ---
  `undefined` | {false}
  `null` | {false}
  `boolean` | {true, false}
  `number` | {true, false}
  `string` | {true, false}
  `Object` | {true}

  Specified by:
    `getPossibleToBooleanOutcomes` in class `JSType`
  Returns:
    the set of boolean literals for this type

### visit

    public <T> T visit(Visitor<T> visitor)

  Description copied from class: `JSType`
  Visit this type with the given visitor.

  Specified by:
    `visit` in class `JSType`
  Returns:
    the value returned by the visitor
  See Also:
    `Visitor`

### hasDisplayName

    public boolean hasDisplayName()

  Overrides:
    `hasDisplayName` in class `JSType`
  Returns:
    true if the JSType has a user meaningful label.