Tokens with differing symbols are always unequal. Tokens with differing values are always unequal. Tokens with differing Value types are always unequal. Member location is always ignored for comparison. Member data is ignored for comparison *EXCEPT* when the symbol is Ident.
Original text from source
The "type" of this token
Only valid when symbol is symbol!"Value", otherwise null
This only represents terminals. Nonterminals aren't constructed since the AST is directly built during parsing.