Skip to content

Commit

Permalink
Fix a few JET opt errors, closes #31.
Browse files Browse the repository at this point in the history
  • Loading branch information
KristofferC authored and fredrikekre committed Aug 2, 2024
1 parent bf9e3b0 commit e697677
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 13 deletions.
4 changes: 2 additions & 2 deletions src/chisels.jl
Original file line number Diff line number Diff line change
Expand Up @@ -365,8 +365,8 @@ end
function infix_op_call_op(node::Node)
@assert is_infix_op_call(node) || kind(node) === K"||"
kids = verified_kids(node)
first_operand_index = findfirst(!JuliaSyntax.is_whitespace, kids)
op_index = findnext(JuliaSyntax.is_operator, kids, first_operand_index + 1)
first_operand_index = findfirst(!JuliaSyntax.is_whitespace, kids)::Int
op_index = findnext(JuliaSyntax.is_operator, kids, first_operand_index + 1)::Int
return kids[op_index]
end

Expand Down
6 changes: 3 additions & 3 deletions src/main.jl
Original file line number Diff line number Diff line change
Expand Up @@ -270,9 +270,9 @@ function main(argv)

# Call the library to format the text
ctx = try
ctx = Context(sourcetext; quiet, verbose, debug, diff, check)
format_tree!(ctx)
ctx
ctx = Context(sourcetext; quiet, verbose, debug, diff, check)
format_tree!(ctx)
ctx
catch err
print_progress && errln()
# Limit stacktrace to 5 frames because Runic uses recursion a lot and 5 should
Expand Down
12 changes: 4 additions & 8 deletions src/runestone.jl
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@ function format_float_literals(ctx::Context, node::Node)
end
# Split up the pieces
r = r"^(?<sgn>[+-])?(?<int>\d*)(?:\.?(?<frac>\d*))?(?:(?<epm>[eEf][+-]?)(?<exp>\d+))?$"
m = match(r, str)
m = match(r, str)::RegexMatch
io = IOBuffer() # TODO: Could be reused?
# Write the sign part
if (sgn = m[:sgn]; sgn !== nothing)
Expand Down Expand Up @@ -380,10 +380,6 @@ function spaces_in_listlike(ctx::Context, node::Node)
if last_item_idx !== nothing && last_item_idx <= opening_leaf_idx
last_item_idx = nothing
end
last_comma_idx = findprev(x -> kind(x) === K",", kids, closing_leaf_idx - 1)
if last_comma_idx !== nothing && last_comma_idx <= opening_leaf_idx
last_comma_idx = nothing
end

# Multiline lists require leading and trailing newline
# multiline = contains_outer_newline(kids, opening_leaf_idx, closing_leaf_idx)
Expand Down Expand Up @@ -1383,7 +1379,7 @@ function replace_with_in(ctx::Context, node::Node)
@assert kind(node) === K"=" && !is_leaf(node) && meta_nargs(node) == 3
kids = verified_kids(node)
pos = position(ctx.fmt_io)
vars_index = findfirst(!JuliaSyntax.is_whitespace, kids)
vars_index = findfirst(!JuliaSyntax.is_whitespace, kids)::Int
# TODO: Need to insert whitespaces around `in` when replacing e.g. `i=I` with `iinI`.
# However, at the moment it looks like the whitespace around operator pass does it's
# thing first? I don't really know how though, because the for loop pass should be
Expand Down Expand Up @@ -2785,8 +2781,8 @@ function indent_multiline_strings(ctx::Context, node::Node)
end

# Opening triple quote
open_idx = findfirst(x -> kind(x) === triplekind, kids)
close_idx = findlast(x -> kind(x) === triplekind, kids)
open_idx = findfirst(x -> kind(x) === triplekind, kids)::Int
close_idx = findlast(x -> kind(x) === triplekind, kids)::Int
@assert close_idx == length(kids) # ?
open_kid = kids[open_idx]
@assert kind(open_kid) === triplekind
Expand Down

0 comments on commit e697677

Please sign in to comment.