@@ -9,7 +9,7 @@ function closer(ps::ParseState)
9
9
ps. nt. kind == Tokens. LBRACE ||
10
10
ps. nt. kind == Tokens. LSQUARE ||
11
11
(ps. nt. kind == Tokens. STRING && isemptyws (ps. ws)) ||
12
- ((ps. nt. kind == Tokens. RPAREN || ps. nt. kind == Tokens. RSQUARE) && isidentifier (ps. nt))
12
+ ((ps. nt. kind == Tokens. RPAREN || ps. nt. kind == Tokens. RSQUARE) && isidentifier (ps. nt))
13
13
)) ||
14
14
(ps. nt. kind == Tokens. COMMA && ps. closer. precedence > 0 ) ||
15
15
ps. nt. kind == Tokens. ENDMARKER ||
@@ -20,10 +20,10 @@ function closer(ps::ParseState)
20
20
(ps. closer. paren && ps. nt. kind == Tokens. RPAREN) ||
21
21
(ps. closer. brace && ps. nt. kind == Tokens. RBRACE) ||
22
22
(ps. closer. square && ps. nt. kind == Tokens. RSQUARE) ||
23
- ps. nt. kind == Tokens. ELSEIF ||
23
+ ps. nt. kind == Tokens. ELSEIF ||
24
24
ps. nt. kind == Tokens. ELSE ||
25
- ps. nt. kind == Tokens. CATCH ||
26
- ps. nt. kind == Tokens. FINALLY ||
25
+ ps. nt. kind == Tokens. CATCH ||
26
+ ps. nt. kind == Tokens. FINALLY ||
27
27
(ps. closer. ifop && isoperator (ps. nt) && (precedence (ps. nt) <= 0 || ps. nt. kind == Tokens. COLON)) ||
28
28
(ps. closer. range && (ps. nt. kind == Tokens. FOR || iscomma (ps. nt) || ps. nt. kind == Tokens. IF)) ||
29
29
(ps. closer. ws && ! isemptyws (ps. ws) &&
@@ -32,7 +32,7 @@ function closer(ps::ParseState)
32
32
! (! ps. closer. inmacro && ps. nt. kind == Tokens. FOR) &&
33
33
! (ps. nt. kind == Tokens. DO) &&
34
34
! (
35
- (isbinaryop (ps. nt) && ! (isemptyws (ps. nws) && isunaryop (ps. nt) && ps. closer. wsop)) ||
35
+ (isbinaryop (ps. nt) && ! (isemptyws (ps. nws) && isunaryop (ps. nt) && ps. closer. wsop)) ||
36
36
(isunaryop (ps. t) && ps. ws. kind == WS)
37
37
)) ||
38
38
(ps. nt. startbyte ≥ ps. closer. stop) ||
209
209
210
210
isidentifier (t:: AbstractToken ) = t. kind == Tokens. IDENTIFIER
211
211
212
- isliteral (t:: AbstractToken ) = Tokens. begin_literal < t. kind < Tokens. end_literal
213
-
214
212
isbool (t:: AbstractToken ) = Tokens. TRUE ≤ t. kind ≤ Tokens. FALSE
215
213
iscomma (t:: AbstractToken ) = t. kind == Tokens. COMMA
216
214
@@ -224,7 +222,7 @@ isinstance(t::AbstractToken) = isidentifier(t) ||
224
222
225
223
ispunctuation (t:: AbstractToken ) = t. kind == Tokens. COMMA ||
226
224
t. kind == Tokens. END ||
227
- Tokens. LSQUARE ≤ t. kind ≤ Tokens. RPAREN ||
225
+ Tokens. LSQUARE ≤ t. kind ≤ Tokens. RPAREN ||
228
226
t. kind == Tokens. AT_SIGN
229
227
230
228
isstring (x) = false
@@ -235,7 +233,7 @@ is_float(x) = x isa LITERAL && x.kind == Tokens.FLOAT
235
233
is_number (x) = x isa LITERAL && (x. kind == Tokens. INTEGER || x. kind == Tokens. FLOAT)
236
234
is_nothing (x) = x isa LITERAL && x. kind == Tokens. NOTHING
237
235
238
- isajuxtaposition (ps:: ParseState , ret) = ((is_number (ret) && (ps. nt. kind == Tokens. IDENTIFIER || ps. nt. kind == Tokens. LPAREN || ps. nt. kind == Tokens. CMD || ps. nt. kind == Tokens. STRING || ps. nt. kind == Tokens. TRIPLE_STRING)) ||
236
+ isajuxtaposition (ps:: ParseState , ret) = ((is_number (ret) && (ps. nt. kind == Tokens. IDENTIFIER || ps. nt. kind == Tokens. LPAREN || ps. nt. kind == Tokens. CMD || ps. nt. kind == Tokens. STRING || ps. nt. kind == Tokens. TRIPLE_STRING)) ||
239
237
((ret isa UnarySyntaxOpCall && is_prime (ret. arg2) && ps. nt. kind == Tokens. IDENTIFIER) ||
240
238
((ps. t. kind == Tokens. RPAREN || ps. t. kind == Tokens. RSQUARE) && (ps. nt. kind == Tokens. IDENTIFIER || ps. nt. kind == Tokens. CMD)) ||
241
239
((ps. t. kind == Tokens. STRING || ps. t. kind == Tokens. TRIPLE_STRING) && (ps. nt. kind == Tokens. STRING || ps. nt. kind == Tokens. TRIPLE_STRING)))) || ((ps. t. kind in (Tokens. INTEGER, Tokens. FLOAT) || ps. t. kind in (Tokens. RPAREN,Tokens. RSQUARE,Tokens. RBRACE)) && ps. nt. kind == Tokens. IDENTIFIER)
@@ -386,7 +384,7 @@ function check_file(file, ret, neq)
386
384
str = read (file, String)
387
385
x0, cstfailed, sp = cst_parsefile (str)
388
386
x1, flispfailed = flisp_parsefile (str)
389
-
387
+
390
388
print (" \r " )
391
389
if ! isempty (sp)
392
390
printstyled (file, color = :blue )
@@ -408,7 +406,7 @@ function check_file(file, ret, neq)
408
406
printstyled (string (" " , c1), bold = true , color = :light_green )
409
407
println ()
410
408
push! (ret, (file, :noteq ))
411
- end
409
+ end
412
410
end
413
411
414
412
function check_base (dir = dirname (Base. find_source_file (" essentials.jl" )), display = false )
@@ -428,7 +426,7 @@ function check_base(dir = dirname(Base.find_source_file("essentials.jl")), displ
428
426
N += 1
429
427
try
430
428
print (" \r " , rpad (string (N), 5 ), rpad (string (round (fail / N * 100 , sigdigits = 3 )), 8 ), rpad (string (round (err / N * 100 , sigdigits = 3 )), 8 ), rpad (string (round (neq / N * 100 , sigdigits = 3 )), 8 ))
431
-
429
+
432
430
check_file (file, ret, neq)
433
431
catch er
434
432
isa (er, InterruptException) && rethrow (er)
@@ -495,15 +493,15 @@ of its components. Returns a vector of failing expressions.
495
493
function check_span (x:: EXPR{StringH} , neq = []) end
496
494
function check_span (x:: T , neq = []) where T <: Union{IDENTIFIER,LITERAL,OPERATOR,KEYWORD,PUNCTUATION} neq end
497
495
498
- function check_span (x:: UnaryOpCall , neq = [])
496
+ function check_span (x:: UnaryOpCall , neq = [])
499
497
check_span (x. op)
500
498
check_span (x. arg)
501
499
if x. op. fullspan + x. arg. fullspan != x. fullspan
502
500
push! (neq, x)
503
501
end
504
502
neq
505
503
end
506
- function check_span (x:: UnarySyntaxOpCall , neq = [])
504
+ function check_span (x:: UnarySyntaxOpCall , neq = [])
507
505
check_span (x. arg1)
508
506
check_span (x. arg2)
509
507
if x. arg1. fullspan + x. arg2. fullspan != x. fullspan
@@ -619,7 +617,7 @@ Base.iterate(x::BinaryOpCall, s) = s > 2 ? nothing : (getfield(x, s + 1), s + 1)
619
617
Base. length (x:: BinaryOpCall ) = 3
620
618
621
619
Base. iterate (x:: WhereOpCall ) = x. arg1, 1
622
- function Base. iterate (x:: WhereOpCall , s)
620
+ function Base. iterate (x:: WhereOpCall , s)
623
621
if s == 1
624
622
return x. op, 2
625
623
elseif s < length (x)
@@ -703,5 +701,3 @@ function _unescape_string(io, s::AbstractString)
703
701
end
704
702
end
705
703
end
706
-
707
-
0 commit comments