Repository URL to install this package:
Version:
3.0.0 ▾
|
program Test;
type
TToken = (
tkNil,tkEOF,tkNumber,tkOpenBrace,tkCloseBrace,
tkPlus,tkMinus,tkTimes,tkSlash,tkCaret,tkSemiColon
);
function TokenToStr(const Token: TToken): String;
function Quote(const S: String): String;
inline; // comment out to avoid the internal error
begin
Quote:='"'+S+'"';
end;
begin
case Token of
tkNil : TokenToStr:=Quote('Unknown');
tkEOF : TokenToStr:=Quote('EOF');
tkNumber : TokenToStr:=Quote('Number');
tkOpenBrace : TokenToStr:=Quote('(');
tkCloseBrace: TokenToStr:=Quote(')');
tkPlus : TokenToStr:=Quote('+');
tkMinus : TokenToStr:=Quote('-');
tkTimes : TokenToStr:=Quote('*');
tkSlash : TokenToStr:=Quote('/');
tkCaret : TokenToStr:=Quote('^');
tkSemiColon : TokenToStr:=Quote(';');
end;
end;
begin
if (TokenToStr(tkNil)<>'"Unknown"') then
halt(1);
end.