lean4-htt/tests/lean/resolveGlobalName.lean
2022-10-19 09:28:08 -07:00

41 lines
581 B
Text

import Lean
def Boo.x := 1
def Foo.x := 2
def Foo.x.y := 3
def Bla.x := 4
namespace Test
export Bla (x)
end Test
open Lean
open Lean.Elab.Term
open Lean.Elab.Command
syntax (name := resolveKind) "#resolve " ident : command
@[command_elab resolveKind] def elabResolve : CommandElab :=
fun stx => liftTermElabM do
let cs ← resolveGlobalName $ stx.getIdAt 1;
Lean.logInfo $ toString cs;
pure ()
#resolve x.y
#resolve x
open Foo
#resolve x
#resolve x.y
#resolve x.z.w
open Boo
#resolve x
#resolve x.y
#resolve x.z.w
open Test
#resolve x
#resolve x.w.h.r
#resolve x.y