File: .lake/packages/lean4/src/lean/Lean/Compiler/LCNF/Check.lean

full_name: Lean.Compiler.LCNF.Check.Context
code: structure Context where
  /-- Join points that are in scope. -/
  jps : FVarIdSet := {}
  /-- Variables and local functions in scope -/
  vars : FVarIdSet := {}
goal: Type

full_name: Lean.Compiler.LCNF.Check.Context.jps
code: structure Context where
  /-- Join points that are in scope. -/
  jps : FVarIdSet := {}
  /-- Variables and local functions in scope -/
  vars : FVarIdSet := {}
goal: Lean.FVarIdSet

full_name: Lean.Compiler.LCNF.Check.Context.vars
code: structure Context where
  /-- Join points that are in scope. -/
  jps : FVarIdSet := {}
  /-- Variables and local functions in scope -/
  vars : FVarIdSet := {}
goal: Lean.FVarIdSet

full_name: Lean.Compiler.LCNF.Check.State
code: structure State where
  /-- All free variables found -/
  all : FVarIdHashSet := {}
goal: Type

full_name: Lean.Compiler.LCNF.Check.State.all
code: structure State where
  /-- All free variables found -/
  all : FVarIdHashSet := {}
goal: Lean.FVarIdHashSet

full_name: Lean.Compiler.LCNF.Check.CheckM
code: abbrev CheckM 
goal: Type

full_name: Lean.Compiler.LCNF.Check.checkTypes
code: def checkTypes : CheckM Bool 
goal: Lean.Compiler.LCNF.Check.CheckM Bool

full_name: Lean.Compiler.LCNF.Check.checkFVar
code: def checkFVar (fvarId : FVarId) : CheckM Unit 
goal: Lean.Compiler.LCNF.Check.CheckM Unit

full_name: Lean.Compiler.LCNF.Check.isCtorParam
code: /-- Return true `f` is a constructor and `i` is less than its number of parameters. -/
def isCtorParam (f : Expr) (i : Nat) : CoreM Bool 
goal: Lean.CoreM Bool

full_name: Lean.Compiler.LCNF.Check.checkAppArgs
code: def checkAppArgs (f : Expr) (args : Array Arg) : CheckM Unit 
goal: Lean.Compiler.LCNF.Check.CheckM Unit

full_name: Lean.Compiler.LCNF.Check.checkLetValue
code: def checkLetValue (e : LetValue) : CheckM Unit 
goal: Lean.Compiler.LCNF.Check.CheckM Unit

full_name: Lean.Compiler.LCNF.Check.checkJpInScope
code: def checkJpInScope (jp : FVarId) : CheckM Unit 
goal: Lean.Compiler.LCNF.Check.CheckM Unit

full_name: Lean.Compiler.LCNF.Check.checkParam
code: def checkParam (param : Param) : CheckM Unit 
goal: Lean.Compiler.LCNF.Check.CheckM Unit

full_name: Lean.Compiler.LCNF.Check.checkParams
code: def checkParams (params : Array Param) : CheckM Unit 
goal: Lean.Compiler.LCNF.Check.CheckM Unit

full_name: Lean.Compiler.LCNF.Check.checkLetDecl
code: def checkLetDecl (letDecl : LetDecl) : CheckM Unit 
goal: Lean.Compiler.LCNF.Check.CheckM Unit

full_name: Lean.Compiler.LCNF.Check.addFVarId
code: def addFVarId (fvarId : FVarId) : CheckM Unit 
goal: Lean.Compiler.LCNF.Check.CheckM Unit

full_name: Lean.Compiler.LCNF.Check.withFVarId
code: @[inline] def withFVarId (fvarId : FVarId) (x : CheckM α) : CheckM α 
goal: Lean.Compiler.LCNF.Check.CheckM α

full_name: Lean.Compiler.LCNF.Check.withJp
code: @[inline] def withJp (fvarId : FVarId) (x : CheckM α) : CheckM α 
goal: Lean.Compiler.LCNF.Check.CheckM α

full_name: Lean.Compiler.LCNF.Check.withParams
code: @[inline] def withParams (params : Array Param) (x : CheckM α) : CheckM α 
goal: Lean.Compiler.LCNF.Check.CheckM α

full_name: Lean.Compiler.LCNF.Check.run
code: def run (x : CheckM α) : CompilerM α 
goal: Lean.Compiler.LCNF.CompilerM α

full_name: Lean.Compiler.LCNF.Decl.check
code: def Decl.check (decl : Decl) : CompilerM Unit 
goal: Lean.Compiler.LCNF.CompilerM Unit

full_name: Lean.Compiler.LCNF.checkDeadLocalDecls.visitDecls
code: /--
Check whether every local declaration in the local context is used in one of given `decls`.
-/
partial def checkDeadLocalDecls (decls : Array Decl) : CompilerM Unit 
goal: StateM Lean.FVarIdHashSet Unit

full_name: Lean.Compiler.LCNF.checkDeadLocalDecls.visitFVar
code: /--
Check whether every local declaration in the local context is used in one of given `decls`.
-/
partial def checkDeadLocalDecls (decls : Array Decl) : CompilerM Unit 
goal: StateM Lean.FVarIdHashSet Unit

full_name: Lean.Compiler.LCNF.checkDeadLocalDecls.visitCode
code: /--
Check whether every local declaration in the local context is used in one of given `decls`.
-/
partial def checkDeadLocalDecls (decls : Array Decl) : CompilerM Unit 
goal: StateM Lean.FVarIdHashSet Unit

full_name: Lean.Compiler.LCNF.checkDeadLocalDecls
code: /--
Check whether every local declaration in the local context is used in one of given `decls`.
-/
partial def checkDeadLocalDecls (decls : Array Decl) : CompilerM Unit 
goal: Lean.Compiler.LCNF.CompilerM Unit

full_name: Lean.Compiler.LCNF.checkDeadLocalDecls.visitDecl
code: /--
Check whether every local declaration in the local context is used in one of given `decls`.
-/
partial def checkDeadLocalDecls (decls : Array Decl) : CompilerM Unit 
goal: StateM Lean.FVarIdHashSet Unit

full_name: Lean.Compiler.LCNF.checkDeadLocalDecls.visitParams
code: /--
Check whether every local declaration in the local context is used in one of given `decls`.
-/
partial def checkDeadLocalDecls (decls : Array Decl) : CompilerM Unit 
goal: StateM Lean.FVarIdHashSet Unit

full_name: Lean.Compiler.LCNF.checkDeadLocalDecls.visitParam
code: /--
Check whether every local declaration in the local context is used in one of given `decls`.
-/
partial def checkDeadLocalDecls (decls : Array Decl) : CompilerM Unit 
goal: StateM Lean.FVarIdHashSet Unit