File: .lake/packages/lean4/src/lean/Lean/Meta/Match/MatchEqsExt.lean

full_name: Lean.Meta.Match.instReprMatchEqns
code: structure MatchEqns where
  eqnNames             : Array Name
  splitterName         : Name
  splitterAltNumParams : Array Nat
  deriving Inhabited, Repr
goal: Repr Lean.Meta.Match.MatchEqns

full_name: Lean.Meta.Match.MatchEqns.splitterName
code: structure MatchEqns where
  eqnNames             : Array Name
  splitterName         : Name
  splitterAltNumParams : Array Nat
  deriving Inhabited, Repr
goal: Lean.Name

full_name: Lean.Meta.Match.instInhabitedMatchEqns
code: structure MatchEqns where
  eqnNames             : Array Name
  splitterName         : Name
  splitterAltNumParams : Array Nat
  deriving Inhabited, Repr
goal: Inhabited Lean.Meta.Match.MatchEqns

full_name: Lean.Meta.Match.MatchEqns
code: structure MatchEqns where
  eqnNames             : Array Name
  splitterName         : Name
  splitterAltNumParams : Array Nat
  deriving Inhabited, Repr
goal: Type

full_name: Lean.Meta.Match.MatchEqns.eqnNames
code: structure MatchEqns where
  eqnNames             : Array Name
  splitterName         : Name
  splitterAltNumParams : Array Nat
  deriving Inhabited, Repr
goal: Array Lean.Name

full_name: Lean.Meta.Match.MatchEqns.splitterAltNumParams
code: structure MatchEqns where
  eqnNames             : Array Name
  splitterName         : Name
  splitterAltNumParams : Array Nat
  deriving Inhabited, Repr
goal: Array Nat

full_name: Lean.Meta.Match.MatchEqns.size
code: def MatchEqns.size (e : MatchEqns) : Nat 
goal: Nat

full_name: Lean.Meta.Match.MatchEqnsExtState
code: structure MatchEqnsExtState where
  map : PHashMap Name MatchEqns := {}
  eqns : PHashSet Name := {}
  deriving Inhabited
goal: Type

full_name: Lean.Meta.Match.MatchEqnsExtState.eqns
code: structure MatchEqnsExtState where
  map : PHashMap Name MatchEqns := {}
  eqns : PHashSet Name := {}
  deriving Inhabited
goal: Lean.PHashSet Lean.Name

full_name: Lean.Meta.Match.instInhabitedMatchEqnsExtState
code: structure MatchEqnsExtState where
  map : PHashMap Name MatchEqns := {}
  eqns : PHashSet Name := {}
  deriving Inhabited
goal: Inhabited Lean.Meta.Match.MatchEqnsExtState

full_name: Lean.Meta.Match.MatchEqnsExtState.map
code: structure MatchEqnsExtState where
  map : PHashMap Name MatchEqns := {}
  eqns : PHashSet Name := {}
  deriving Inhabited
goal: Lean.PHashMap Lean.Name Lean.Meta.Match.MatchEqns

full_name: Lean.Meta.Match.matchEqnsExt
code: builtin_initialize matchEqnsExt : EnvExtension MatchEqnsExtState ←
  registerEnvExtension (pure {})
goal: Lean.EnvExtension Lean.Meta.Match.MatchEqnsExtState

full_name: Lean.Meta.Match.initFn._@..lake.packages.lean4.src.lean.Lean.Meta.Match.MatchEqsExt._hyg.182
code: builtin_initialize matchEqnsExt : EnvExtension MatchEqnsExtState ←
  registerEnvExtension (pure {})
goal: IO (Lean.EnvExtension Lean.Meta.Match.MatchEqnsExtState)

full_name: Lean.Meta.Match.registerMatchEqns
code: def registerMatchEqns (matchDeclName : Name) (matchEqns : MatchEqns) : CoreM Unit 
goal: Lean.CoreM Unit

full_name: Lean.Meta.Match.getEquationsFor
code: @[extern "lean_get_match_equations_for"]
opaque getEquationsFor (matchDeclName : Name) : MetaM MatchEqns
goal: Lean.MetaM Lean.Meta.Match.MatchEqns

full_name: Lean.Meta.Match.isMatchEqnTheorem
code: /--
Returns `true` if `declName` is the name of a `match` equational theorem.
-/
def isMatchEqnTheorem (env : Environment) (declName : Name) : Bool 
goal: Bool