Home | History | Annotate | Download | only in testdata

Lines Matching refs:token

16 	"go/token"
33 file *token.File
47 // Next token
48 pos token.Pos // token position
49 tok token.Token // one token look-ahead
50 lit string // token literal
76 func (p *parser) init(fset *token.FileSet, filename string, src []byte, mode uint) {
229 // Advance to the next token.
231 // Because of one-token look-ahead, print the previous token
233 // very first token (!p.pos.IsValid()) is not initialized
234 // (it is token.ILLEGAL), so don't print it .
273 // token terminates a comment group.
278 for p.tok == token.COMMENT && endline+1 >= p.file.Line(p.pos) {
291 // Advance to the next non-comment token. In the process, collect
297 // token on the line immediately after the comment group.
300 // token on the same line, and that has no tokens after it on the line
312 if p.tok == token.COMMENT {
317 // The comment is on same line as the previous token; it
321 // The next token is on a different line, thus
329 for p.tok == token.COMMENT {
334 // The next token is following on the line immediately after the
341 func (p *parser) error(pos token.Pos, msg string) {
345 func (p *parser) errorExpected(pos token.Pos, msg string) {
350 if p.tok == token.SEMICOLON && p.lit[0] == '\n' {
362 func (p *parser) expect(tok token.Token) token.Pos {
372 if p.tok != token.RPAREN && p.tok != token.RBRACE {
373 p.expect(token.SEMICOLON)
389 if p.tok == token.IDENT {
393 p.expect(token.IDENT) // use expect() error handling
404 for p.tok == token.COMMA {
422 for p.tok == token.COMMA {
433 case token.DEFINE:
436 case token.COLON:
486 if p.tok == token.PERIOD {
502 lbrack := p.expect(token.LBRACK)
504 if ellipsisOk && p.tok == token.ELLIPSIS {
507 } else if p.tok != token.RBRACK {
510 p.expect(token.RBRACK)
542 if p.tok == token.STRING {
576 pos := p.expect(token.STRUCT)
577 lbrace := p.expect(token.LBRACE)
580 for p.tok == token.IDENT || p.tok == token.MUL || p.tok == token.LPAREN {
586 rbrace := p.expect(token.RBRACE)
597 star := p.expect(token.MUL)
604 if isParam && p.tok == token.ELLIPSIS {
612 if p.tok != token.RPAREN {
643 if p.tok != token.COMMA {
672 if p.tok == token.COMMA {
676 for p.tok != token.RPAREN && p.tok != token.EOF {
684 if p.tok != token.COMMA {
708 lparen := p.expect(token.LPAREN)
709 if p.tok != token.RPAREN {
712 rparen := p.expect(token.RPAREN)
722 if p.tok == token.LPAREN {
752 pos := p.expect(token.FUNC)
768 if ident, isIdent := x.(*ast.Ident); isIdent && p.tok == token.LPAREN {
773 typ = &ast.FuncType{token.NoPos, params, results}
791 pos := p.expect(token.INTERFACE)
792 lbrace := p.expect(token.LBRACE)
795 for p.tok == token.IDENT {
798 rbrace := p.expect(token.RBRACE)
809 pos := p.expect(token.MAP)
810 p.expect(token.LBRACK)
812 p.expect(token.RBRACK)
825 if p.tok == token.CHAN {
827 if p.tok == token.ARROW {
832 p.expect(token.ARROW)
833 p.expect(token.CHAN)
844 case token.IDENT:
846 case token.LBRACK:
848 case token.STRUCT:
850 case token.MUL:
852 case token.FUNC:
855 case token.INTERFACE:
857 case token.MAP:
859 case token.CHAN, token.ARROW:
861 case token.LPAREN:
865 rparen := p.expect(token.RPAREN)
889 for p.tok != token.CASE && p.tok != token.DEFAULT && p.tok != token.RBRACE && p.tok != token.EOF {
901 lbrace := p.expect(token.LBRACE)
907 rbrace := p.expect(token.RBRACE)
917 lbrace := p.expect(token.LBRACE)
921 rbrace := p.expect(token.RBRACE)
935 if p.tok != token.LBRACE {
957 case token.IDENT:
964 case token.INT, token.FLOAT, token.IMAG, token.CHAR, token.STRING:
969 case token.LPAREN:
975 rparen := p.expect(token.RPAREN)
978 case token.FUNC:
1011 p.expect(token.LPAREN)
1013 if p.tok == token.TYPE {
1019 p.expect(token.RPAREN)
1029 lbrack := p.expect(token.LBRACK)
1033 if p.tok != token.COLON {
1036 if p.tok == token.COLON {
1039 if p.tok != token.RBRACK {
1044 rbrack := p.expect(token.RBRACK)
1057 lparen := p.expect(token.LPAREN)
1060 var ellipsis token.Pos
1061 for p.tok != token.RPAREN && p.tok != token.EOF && !ellipsis.IsValid() {
1063 if p.tok == token.ELLIPSIS {
1067 if p.tok != token.COMMA {
1073 rparen := p.expect(token.RPAREN)
1083 if p.tok == token.LBRACE {
1089 if p.tok == token.COLON {
1105 for p.tok != token.RBRACE && p.tok != token.EOF {
1107 if p.tok != token.COMMA {
1121 lbrace := p.expect(token.LBRACE)
1124 if p.tok != token.RBRACE {
1128 rbrace := p.expect(token.RBRACE)
1154 if t.Op == token.RANGE {
1223 if t.Op == token.RANGE {
1249 case token.PERIOD:
1255 case token.IDENT:
1257 case token.LPAREN:
1265 case token.LBRACK:
1270 case token.LPAREN:
1275 case token.LBRACE:
1300 case token.ADD, token.SUB, token.NOT, token.XOR, token.AND, token.RANGE:
1306 case token.ARROW:
1310 if p.tok == token.CHAN {
1317 return &ast.UnaryExpr{pos, token.ARROW, p.checkExpr(x)}
1319 case token.MUL:
1361 return p.parseBinaryExpr(lhs, token.LowestPrec+1)
1380 token.DEFINE, token.ASSIGN, token.ADD_ASSIGN,
1381 token.SUB_ASSIGN, token.MUL_ASSIGN, token.QUO_ASSIGN,
1382 token.REM_ASSIGN, token.AND_ASSIGN, token.OR_ASSIGN,
1383 token.XOR_ASSIGN, token.SHL_ASSIGN, token.SHR_ASSIGN, token.AND_NOT_ASSIGN:
1397 case token.COLON:
1412 case token.ARROW:
1419 case token.INC, token.DEC:
1444 pos := p.expect(token.GO)
1459 pos := p.expect(token.DEFER)
1475 p.expect(token.RETURN)
1477 if p.tok != token.SEMICOLON && p.tok != token.RBRACE {
1485 func (p *parser) parseBranchStmt(tok token.Token) *ast.BranchStmt {
1492 if tok != token.FALLTHROUGH && p.tok == token.IDENT {
1519 pos := p.expect(token.IF)
1528 if p.tok == token.SEMICOLON {
1533 if p.tok == token.SEMICOLON {
1546 if p.tok == token.ELSE {
1562 for p.tok == token.COMMA {
1577 if p.tok == token.CASE {
1585 p.expect(token.DEFAULT)
1588 colon := p.expect(token.COLON)
1614 pos := p.expect(token.SWITCH)
1619 if p.tok != token.LBRACE {
1622 if p.tok != token.SEMICOLON {
1625 if p.tok == token.SEMICOLON {
1629 if p.tok != token.LBRACE {
1637 lbrace := p.expect(token.LBRACE)
1639 for p.tok == token.CASE || p.tok == token.DEFAULT {
1642 rbrace := p.expect(token.RBRACE)
1662 if p.tok == token.CASE {
1665 if p.tok == token.ARROW {
1680 if tok == token.ASSIGN || tok == token.DEFINE {
1698 if x, isUnary := rhs.(*ast.UnaryExpr); !isUnary || x.Op != token.ARROW {
1709 p.expect(token.DEFAULT)
1712 colon := p.expect(token.COLON)
1724 pos := p.expect(token.SELECT)
1725 lbrace := p.expect(token.LBRACE)
1727 for p.tok == token.CASE || p.tok == token.DEFAULT {
1730 rbrace := p.expect(token.RBRACE)
1742 pos := p.expect(token.FOR)
1747 if p.tok != token.LBRACE {
1750 if p.tok != token.SEMICOLON {
1753 if p.tok == token.SEMICOLON {
1757 if p.tok != token.SEMICOLON {
1761 if p.tok != token.LBRACE {
1773 if as.Tok != token.ASSIGN && as.Tok != token.DEFINE {
1793 if rhs, isUnary := as.Rhs[0].(*ast.UnaryExpr); isUnary && rhs.Op == token.RANGE {
1812 case token.CONST, token.TYPE, token.VAR:
1816 token.IDENT, token.INT, token.FLOAT, token.CHAR, token.STRING, token.FUNC, token.LPAREN, // operand
1817 token.LBRACK, token.STRUCT, // composite type
1818 token.MUL, token.AND, token.ARROW, token.ADD, token.SUB, token.XOR: // unary operators
1826 case token.GO:
1828 case token.DEFER:
1830 case token.RETURN:
1832 case token.BREAK, token.CONTINUE, token.GOTO, token.FALLTHROUGH:
1834 case token.LBRACE:
1837 case token.IF:
1839 case token.SWITCH:
1841 case token.SELECT:
1843 case token.FOR:
1845 case token.SEMICOLON:
1848 case token.RBRACE:
1874 case token.PERIOD:
1877 case token.IDENT:
1882 if p.tok == token.STRING {
1886 p.expect(token.STRING) // use expect() error handling
1905 if typ != nil || p.tok == token.ASSIGN || iota == 0 {
1906 p.expect(token.ASSIGN)
1950 if typ == nil || p.tok == token.ASSIGN {
1951 p.expect(token.ASSIGN)
1966 func (p *parser) parseGenDecl(keyword token.Token, f parseSpecFunction) *ast.GenDecl {
1973 var lparen, rparen token.Pos
1975 if p.tok == token.LPAREN {
1978 for iota := 0; p.tok != token.RPAREN && p.tok != token.EOF; iota++ {
1981 rparen = p.expect(token.RPAREN)
2023 pos := p.expect(token.FUNC)
2027 if p.tok == token.LPAREN {
2036 if p.tok == token.LBRACE {
2064 case token.CONST:
2067 case token.TYPE:
2070 case token.VAR:
2073 case token.FUNC:
2092 for p.tok != token.EOF {
2109 pos := p.expect(token.PACKAGE)
2125 for p.tok == token.IMPORT {
2126 decls = append(decls, p.parseGenDecl(token.IMPORT, parseImportSpec))
2131 for p.tok != token.EOF {