lean4-htt/src/Lean/DocString.lean
2021-01-11 12:50:11 -08:00

23 lines
801 B
Text

/-
Copyright (c) 2021 Microsoft Corporation. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Leonardo de Moura
-/
import Lean.MonadEnv
namespace Lean
builtin_initialize docStringExt : MapDeclarationExtension String ← mkMapDeclarationExtension `docstring
def addDocString [MonadEnv m] (declName : Name) (docString : String) : m Unit :=
modifyEnv fun env => docStringExt.insert env declName docString
def addDocString' [Monad m] [MonadEnv m] (declName : Name) (docString? : Option String) : m Unit :=
match docString? with
| some docString => addDocString declName docString
| none => return ()
def findDocString? [Monad m] [MonadEnv m] (declName : Name) : m (Option String) :=
return docStringExt.find? (← getEnv) declName
end Lean