code: private final int scan_negative_for_numeric_type(int c) throws IOException
      {
          assert(c == '-');
          c = read_char();
          int t = scan_for_numeric_type(c);
          if (t == IonTokenConstsX.TOKEN_TIMESTAMP) {
              bad_token(c);
          }
          unread_char(c); // and the caller need to unread the '-'
          return t;
      }
docs: variant of scan_numeric_type where the passed in
  start character was preceded by a minus sign.
  this will also unread the minus sign.
  
  @param c first char of number read by caller
  @return numeric token type
  @throws IOException