public scan()

in tsdoc/src/beta/DeclarationReference.ts [828:871]


  public scan(): Token {
    if (!this.eof) {
      this._tokenPos = this._pos;
      this._stringIsUnterminated = false;
      while (!this.eof) {
        const ch: string = this._text.charAt(this._pos++);
        switch (ch) {
          case '{':
            return (this._token = Token.OpenBraceToken);
          case '}':
            return (this._token = Token.CloseBraceToken);
          case '(':
            return (this._token = Token.OpenParenToken);
          case ')':
            return (this._token = Token.CloseParenToken);
          case '[':
            return (this._token = Token.OpenBracketToken);
          case ']':
            return (this._token = Token.CloseBracketToken);
          case '!':
            return (this._token = Token.ExclamationToken);
          case '.':
            return (this._token = Token.DotToken);
          case '#':
            return (this._token = Token.HashToken);
          case '~':
            return (this._token = Token.TildeToken);
          case ':':
            return (this._token = Token.ColonToken);
          case ',':
            return (this._token = Token.CommaToken);
          case '@':
            return (this._token = Token.AtToken);
          case '"':
            this.scanString();
            return (this._token = Token.String);
          default:
            this.scanText();
            return (this._token = Token.Text);
        }
      }
    }
    return (this._token = Token.EofToken);
  }