Skip to content

Commit 1cbcade

Browse files
committed
Remove need for storing newline flag on SyntaxToken
1 parent 0b7c83b commit 1cbcade

File tree

2 files changed

+5
-8
lines changed

2 files changed

+5
-8
lines changed

src/parse_stream.jl

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -85,12 +85,11 @@ struct SyntaxToken
8585
is_dotted::Bool
8686
is_suffixed::Bool
8787
had_whitespace::Bool
88-
had_newline::Bool
8988
end
9089

91-
function SyntaxToken(raw::Token, had_whitespace, had_newline)
90+
function SyntaxToken(raw::Token, had_whitespace)
9291
SyntaxToken(raw.kind, raw.startbyte + 1, raw.endbyte + 1, raw.dotop, raw.suffix,
93-
had_whitespace, had_newline)
92+
had_whitespace)
9493
end
9594

9695
function Base.show(io::IO, tok::SyntaxToken)
@@ -255,15 +254,12 @@ end
255254
# but this is not a big problem.
256255
function _buffer_lookahead_tokens(stream::ParseStream)
257256
had_whitespace = false
258-
had_newline = false
259257
while true
260258
raw = Tokenize.Lexers.next_token(stream.lexer)
261259
k = TzTokens.exactkind(raw)
262260
was_whitespace = k in (K"Whitespace", K"Comment", K"NewlineWs")
263-
was_newline = k == K"NewlineWs"
264261
had_whitespace |= was_whitespace
265-
had_newline |= was_newline
266-
push!(stream.lookahead, SyntaxToken(raw, had_whitespace, had_newline))
262+
push!(stream.lookahead, SyntaxToken(raw, had_whitespace))
267263
if !was_whitespace
268264
break
269265
end

src/parser.jl

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -825,6 +825,7 @@ function parse_range(ps::ParseState)
825825
end
826826
n_colons += 1
827827
bump(ps, n_colons == 1 ? EMPTY_FLAGS : TRIVIA_FLAG)
828+
had_newline = peek(ps, skip_newlines=false) == K"NewlineWs"
828829
t = peek_token(ps)
829830
if is_closing_token(ps, kind(t))
830831
# 1: } ==> (call-i 1 : (error))
@@ -835,7 +836,7 @@ function parse_range(ps::ParseState)
835836
emit_diagnostic(ps, error="found unexpected closing token")
836837
return
837838
end
838-
if t.had_newline
839+
if had_newline
839840
# Error message for people coming from python
840841
# 1:\n2 ==> (call-i 1 : (error))
841842
emit_diagnostic(ps, whitespace=true,

0 commit comments

Comments
 (0)