File: .lake/packages/lean4/src/lean/Lean/Compiler/IR/FreeVars.lean

full_name: Lean.IR.MaxIndex.Collector
code: abbrev Collector 
goal: Type

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.MaxIndex.skip
code: @[inline] private def skip : Collector 
goal: Lean.IR.MaxIndex.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.MaxIndex.collect
code: @[inline] private def collect (x : Index) : Collector 
goal: Lean.IR.MaxIndex.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.MaxIndex.collectVar
code: @[inline] private def collectVar (x : VarId) : Collector 
goal: Lean.IR.MaxIndex.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.MaxIndex.collectJP
code: @[inline] private def collectJP (j : JoinPointId) : Collector 
goal: Lean.IR.MaxIndex.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.MaxIndex.seq
code: @[inline] private def seq (k₁ k₂ : Collector) : Collector 
goal: Lean.IR.MaxIndex.Collector

full_name: Lean.IR.MaxIndex.instAndThenCollector
code: instance : AndThen Collector 
goal: AndThen Lean.IR.MaxIndex.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.MaxIndex.collectArg
code: private def collectArg : Arg → Collector
  
goal: Lean.IR.Arg → Lean.IR.MaxIndex.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.MaxIndex.collectArray
code: private def collectArray {α : Type} (as : Array α) (f : α → Collector) : Collector 
goal: Lean.IR.MaxIndex.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.MaxIndex.collectArgs
code: private def collectArgs (as : Array Arg) : Collector 
goal: Lean.IR.MaxIndex.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.MaxIndex.collectParam
code: private def collectParam (p : Param) : Collector 
goal: Lean.IR.MaxIndex.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.MaxIndex.collectParams
code: private def collectParams (ps : Array Param) : Collector 
goal: Lean.IR.MaxIndex.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.MaxIndex.collectExpr
code: private def collectExpr : Expr → Collector
  
goal: Lean.IR.Expr → Lean.IR.MaxIndex.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.MaxIndex.collectAlts
code: private def collectAlts (f : FnBody → Collector) (alts : Array Alt) : Collector 
goal: Lean.IR.MaxIndex.Collector

full_name: Lean.IR.MaxIndex.collectFnBody
code: partial def collectFnBody : FnBody → Collector
  
goal: Lean.IR.FnBody → Lean.IR.MaxIndex.Collector

full_name: Lean.IR.MaxIndex.collectDecl
code: partial def collectDecl : Decl → Collector
  
goal: Lean.IR.Decl → Lean.IR.MaxIndex.Collector

full_name: Lean.IR.FnBody.maxIndex
code: def FnBody.maxIndex (b : FnBody) : Index 
goal: Lean.IR.Index

full_name: Lean.IR.Decl.maxIndex
code: def Decl.maxIndex (d : Decl) : Index 
goal: Lean.IR.Index

full_name: Lean.IR.FreeIndices.Collector
code: abbrev Collector 
goal: Type

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.FreeIndices.skip
code: @[inline] private def skip : Collector 
goal: Lean.IR.FreeIndices.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.FreeIndices.collectIndex
code: @[inline] private def collectIndex (x : Index) : Collector 
goal: Lean.IR.FreeIndices.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.FreeIndices.collectVar
code: @[inline] private def collectVar (x : VarId) : Collector 
goal: Lean.IR.FreeIndices.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.FreeIndices.collectJP
code: @[inline] private def collectJP (x : JoinPointId) : Collector 
goal: Lean.IR.FreeIndices.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.FreeIndices.withIndex
code: @[inline] private def withIndex (x : Index) : Collector → Collector 
goal: Lean.IR.FreeIndices.Collector → Lean.IR.FreeIndices.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.FreeIndices.withVar
code: @[inline] private def withVar (x : VarId) : Collector → Collector 
goal: Lean.IR.FreeIndices.Collector → Lean.IR.FreeIndices.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.FreeIndices.withJP
code: @[inline] private def withJP (x : JoinPointId) : Collector → Collector 
goal: Lean.IR.FreeIndices.Collector → Lean.IR.FreeIndices.Collector

full_name: Lean.IR.FreeIndices.insertParams
code: def insertParams (s : IndexSet) (ys : Array Param) : IndexSet 
goal: Lean.IR.IndexSet

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.FreeIndices.withParams
code: @[inline] private def withParams (ys : Array Param) : Collector → Collector 
goal: Lean.IR.FreeIndices.Collector → Lean.IR.FreeIndices.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.FreeIndices.seq
code: @[inline] private def seq : Collector → Collector → Collector 
goal: Lean.IR.FreeIndices.Collector → Lean.IR.FreeIndices.Collector → Lean.IR.FreeIndices.Collector

full_name: Lean.IR.FreeIndices.instAndThenCollector
code: instance : AndThen Collector 
goal: AndThen Lean.IR.FreeIndices.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.FreeIndices.collectArg
code: private def collectArg : Arg → Collector
  
goal: Lean.IR.Arg → Lean.IR.FreeIndices.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.FreeIndices.collectArray
code: private def collectArray {α : Type} (as : Array α) (f : α → Collector) : Collector 
goal: Lean.IR.FreeIndices.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.FreeIndices.collectArgs
code: private def collectArgs (as : Array Arg) : Collector 
goal: Lean.IR.FreeIndices.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.FreeIndices.collectExpr
code: private def collectExpr : Expr → Collector
  
goal: Lean.IR.Expr → Lean.IR.FreeIndices.Collector

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Compiler.IR.FreeVars.0.Lean.IR.FreeIndices.collectAlts
code: private def collectAlts (f : FnBody → Collector) (alts : Array Alt) : Collector 
goal: Lean.IR.FreeIndices.Collector

full_name: Lean.IR.FreeIndices.collectFnBody
code: partial def collectFnBody : FnBody → Collector
  
goal: Lean.IR.FnBody → Lean.IR.FreeIndices.Collector

full_name: Lean.IR.FnBody.collectFreeIndices
code: def FnBody.collectFreeIndices (b : FnBody) (vs : IndexSet) : IndexSet 
goal: Lean.IR.IndexSet

full_name: Lean.IR.FnBody.freeIndices
code: def FnBody.freeIndices (b : FnBody) : IndexSet 
goal: Lean.IR.IndexSet

full_name: Lean.IR.HasIndex.visitVar
code: def visitVar (w : Index) (x : VarId) : Bool 
goal: Bool

full_name: Lean.IR.HasIndex.visitJP
code: def visitJP (w : Index) (x : JoinPointId) : Bool 
goal: Bool

full_name: Lean.IR.HasIndex.visitArg
code: def visitArg (w : Index) : Arg → Bool
  
goal: Lean.IR.Arg → Bool

full_name: Lean.IR.HasIndex.visitArgs
code: def visitArgs (w : Index) (xs : Array Arg) : Bool 
goal: Bool

full_name: Lean.IR.HasIndex.visitParams
code: def visitParams (w : Index) (ps : Array Param) : Bool 
goal: Bool

full_name: Lean.IR.HasIndex.visitExpr
code: def visitExpr (w : Index) : Expr → Bool
  
goal: Lean.IR.Expr → Bool

full_name: Lean.IR.HasIndex.visitFnBody
code: partial def visitFnBody (w : Index) : FnBody → Bool
  
goal: Lean.IR.FnBody → Bool

full_name: Lean.IR.Arg.hasFreeVar
code: def Arg.hasFreeVar (arg : Arg) (x : VarId) : Bool 
goal: Bool

full_name: Lean.IR.Expr.hasFreeVar
code: def Expr.hasFreeVar (e : Expr) (x : VarId) : Bool 
goal: Bool

full_name: Lean.IR.FnBody.hasFreeVar
code: def FnBody.hasFreeVar (b : FnBody) (x : VarId) : Bool 
goal: Bool