Skip to content

Commit 32530ef

Browse files
committed
tidy up pattern code, coverage
1 parent 80bf3d4 commit 32530ef

4 files changed

Lines changed: 3 additions & 6 deletions

File tree

src/patterns/ellipses.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ end
105105
return t
106106
end
107107

108-
new_left = Tuple((..) flatten(t) ? replace_in_tuple(t) : t for t in left)
109-
new_right = (..) flatten(right) ? replace_in_tuple(right) : right
108+
new_left = Tuple(replace_in_tuple(t) for t in left)
109+
new_right = replace_in_tuple(right)
110110
:($(new_left --> new_right))
111111
end

src/patterns/parse.jl

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,6 @@ end
6363

6464
const SpecialToken = Dict(:* => (*), :_ => (-), :... => (..))
6565
get_special_token(symbol) = get(SpecialToken, symbol, symbol)
66-
mapfilter(f, pred, xs) = map(f, filter(pred, xs))
6766

6867
# Recursively map special tokens inside possibly nested tuples
6968
map_special_tokens(x) = x

src/patterns/patterns.jl

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,6 @@ include("utils.jl")
33
const ArrowPatternSideNestedTuple = Tuple{Vararg{Union{Symbol,Int,EllipsisNotation.Ellipsis}}}
44
const ArrowPatternSide = Tuple{Vararg{Union{Symbol,Int,EllipsisNotation.Ellipsis,ArrowPatternSideNestedTuple}}}
55

6-
is_valid_token(x) = x isa Union{Symbol,Int,EllipsisNotation.Ellipsis}
7-
is_valid_token(x::Tuple) = all(is_valid_token, x) && all(!(y isa Tuple && any(z -> z isa Tuple, (y,))) for y in ())
8-
96
function is_valid_side(x)
107
x isa Tuple || return false
118
for el in x

test/patterns.jl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ using Test
6565
@test einops"* i" == Val((*, :i))
6666
@test einops"i *" == Val((:i, *))
6767
@test einops"i i" == Val((:i, :i))
68+
@test einops"i 1 ..." == Val((:i, 1, ..)) # test map_special_tokens fallback for Int and ..
6869
end
6970

7071
@testset "parsing errors" begin

0 commit comments

Comments
 (0)