Compiler/lexical analyzer: Difference between revisions

Line 6,998:
}
default : {
if any(&digits, ch[1] ? any(&digits)) then {
ch @pushback
return scan_integer_literal(inp, pushback)
} else if any(ident_start, ch[1] ? any(ident_start)) then {
ch @pushback
return scan_identifier_or_reserved_word (inp, pushback)
Line 7,020:
line_no := ch[2]
column_no := ch[3]
while EOF ~=== ch[1] & any(ident_continuation, ch[1] ? any(ident_continuation)) do {
s ||:= ch[1]
ch := @inp
Line 7,037:
line_no := ch[2]
column_no := ch[3]
while EOF ~=== ch[1] & any(ident_continuation, ch[1] ? any(ident_continuation)) do {
s ||:= ch[1]
ch := @inp
Line 7,134:
ch := @inp
(EOF === ch[1]) & { ch @pushback; return }
if not any(whitespace, ch[1] ? any(whitespace)) then {
(ch[1] == "/") | { ch @pushback; return }
(ch1 := @inp) | { ch @pushback; return }
1,448

edits