anchor.diff:    }
   
     Token parseTypeVariablesOpt(Token token) {
  -    return parseStuff(
  +    return parseStuffOpt(
           token,
           (t) => listener.beginTypeVariables(t),
           (t) => parseTypeVariable(t),
  
positive.code:   }
  
    Token parseTypeArgumentsOpt(Token token) {
      return parseStuff(
          token,
          (t) => listener.beginTypeArguments(t),
          (t) => parseType(t),
  
negative.code:   }
  
    /// TODO(ahe): Clean this up.
    Token parseStuffOpt(Token token, Function beginStuff, Function stuffParser,
        Function endStuff, Function handleNoStuff) {
      // TODO(brianwilkerson): Remove the invocation of `previous` when
      // `injectGenericCommentTypeList` returns the last consumed token.
      token = listener.injectGenericCommentTypeList(token.next).previous;
  