anchor.diff:      return token;
     }
   
  -  /**
  -   * Returns true if the stringValue of the [token] is either [value1],
  -   * [value2], or [value3].
  -   */
  +  /// Returns true if the stringValue of the [token] is either [value1],
  +  /// [value2], or [value3].
     bool isOneOf3(Token token, String value1, String value2, String value3) {
       String stringValue = token.stringValue;
       return value1 == stringValue ||
  
positive.code:     return peek;
    }
  
    /**
     * If [token] is the start of a type, returns the token after that type.
     * If [token] is not the start of a type, null is returned.
     */
    Token peekAfterIfType(Token token) {
      if (!optional('void', token) && !token.isIdentifier()) {
        return null;
  
negative.code:     return token;
    }
  
    /// Peek after the following labels (if any). The following token
    /// is used to determine if the labels belong to a statement or a
    /// switch case.
    Token peekPastLabels(Token token) {
      while (token.isIdentifier() && optional(':', token.next)) {
        token = token.next.next;
  