diff --git a/parser/ast.go b/parser/ast.go index a66c587..a8ec9c3 100644 --- a/parser/ast.go +++ b/parser/ast.go @@ -22,7 +22,7 @@ type Node interface { } func (Source) node() {} -func (IdentStatement) node() {} +func (Ident) node() {} func (BlockStatement) node() {} func (AssignStatement) node() {} func (ListStatement) node() {} @@ -52,15 +52,15 @@ func (s *Source) Pos() scanner.Pos { } // IdentStatement represents an identifier. -type IdentStatement struct { +type Ident struct { token scanner.Token } -func (i *IdentStatement) String() string { +func (i *Ident) String() string { return i.token.String() } -func (i *IdentStatement) Pos() scanner.Pos { +func (i *Ident) Pos() scanner.Pos { return i.token.Pos } diff --git a/parser/parser.go b/parser/parser.go index ee02e8a..84b5dff 100644 --- a/parser/parser.go +++ b/parser/parser.go @@ -70,7 +70,7 @@ func (p *Parser) parseStatement() Node { func (p *Parser) parseAssignment() Node { defer un(trace(p, "ParseAssignment")) return &AssignStatement{ - lhs: &IdentStatement{ + lhs: &Ident{ token: p.prevTok, }, assign: p.tok.Pos, @@ -81,7 +81,7 @@ func (p *Parser) parseAssignment() Node { func (p *Parser) parseIdent() Node { defer un(trace(p, "ParseIdent")) - return &IdentStatement{ + return &Ident{ token: p.tok, } }