chore: add CollectLevelParams.visitLevels

This commit is contained in:
Leonardo de Moura 2022-10-24 08:19:30 -07:00
parent 81f8ab8fbb
commit 2cd21e08ba

View file

@ -31,6 +31,9 @@ mutual
| _ => id
end
def visitLevels (us : List Level) : Visitor :=
fun s => us.foldl (fun s u => visitLevel u s) s
mutual
partial def visitExpr (e : Expr) : Visitor := fun s =>
if !e.hasLevelParam then s
@ -44,7 +47,7 @@ mutual
| .letE _ t v b _ => visitExpr b ∘ visitExpr v ∘ visitExpr t
| .app f a => visitExpr a ∘ visitExpr f
| .mdata _ b => visitExpr b
| .const _ us => fun s => us.foldl (fun s u => visitLevel u s) s
| .const _ us => visitLevels us
| .sort u => visitLevel u
| _ => id
end