Compare symbols.
Convert to NonterminalID if it is a nonterminal.
Convert to TokenID if it is a token.
Constant for invalid symbol.
ID of the nonterminal or token as integer. Can be SymbolID.max if invalid.
Is this a token. It is a nonterminal otherwise. Use NonterminalID or TokenID if the type is known at compile time.
ID for nonterminal or token.