package ast import "code.jmug.me/jmug/interpreter-in-go/pkg/token" // Identifier is treated as an expression because in certain // circumstances they can return values (think `let some = other` where `other` // is actually an expression returning a value) and this makes them easier to // handle (according to the author). type Identifier struct { Token token.Token Value string } func (i *Identifier) expressionNode() {} func (i *Identifier) TokenLiteral() string { return i.Token.Literal } func (i *Identifier) String() string { return i.Value }