src/com/google/javascript/rhino/jstype/UnionType.java
/**
   * This predicate is used to test whether a given type can appear in a {@code Symbol} context
   *
   * @return {@code true} if not it maybe a symbol or Symbol object
   */
This predicate is used to test whether a given type can appear in a  Symbol context
@return  true if not it maybe a symbol or Symbol object
This predicate is used to test whether a given type can appear in a Symbol context @return true if not it maybe a symbol or Symbol object
@Override
  public boolean matchesSymbolContext() {
    return anyMatch(JSType::matchesSymbolContext, alternatesRetainingStructuralSubtypes);
  }
@ Override public boolean matchesSymbolContext ( ) { return anyMatch ( JSType :: matchesSymbolContext , alternatesRetainingStructuralSubtypes ) ; }
This predicate is used to test whether a given type can appear in a {@code Symbol} context
 @return {@code true} if not it maybe a symbol or Symbol object
This predicate is used to test whether a given type can appear in a { @code Symbol } context @return { @code true } if not it maybe a symbol or Symbol object
// TODO(user): Reverse this logic to make it correct instead of generous.