Imports
/-
Copyright (c) 2024 Joseph Tooby-Smith. All rights reserved.
Released under Apache 2.0 license.
Authors: Joseph Tooby-Smith
-/
module
public import Physlib.Meta.Remark.BasicUnderlying structure for remarks
@[expose] public sectionAll remarks in the environment.
meta def allRemarkInfo : m (Array RemarkInfo) := do
let env ← getEnv
return remarkExtension.getState envThe full name of a remark (name and namespace).
meta def RemarkInfo.toFullName (r : RemarkInfo) : Name :=
if r.nameSpace != .anonymous then
.str r.nameSpace r.name.toString
else
r.nameA Bool which is true if a name corresponds to a remark.
meta def RemarkInfo.IsRemark (n : Name) : m Bool := do
let allRemarks ← allRemarkInfo
let r := allRemarks.find? fun r => r.toFullName == n
return r.isSomeGets the remarkInfo from a name corresponding to a remark..
meta def RemarkInfo.getRemarkInfo (n : Name) : m RemarkInfo := do
let allRemarks ← allRemarkInfo
match allRemarks.find? fun r => r.toFullName == n with
| some r => return r
| none => throwError s!"No remark named {n}"