summaryrefslogtreecommitdiff
path: root/src/elab_env.sml
diff options
context:
space:
mode:
Diffstat (limited to 'src/elab_env.sml')
-rw-r--r--src/elab_env.sml9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/elab_env.sml b/src/elab_env.sml
index a2097aa9..e79b665d 100644
--- a/src/elab_env.sml
+++ b/src/elab_env.sml
@@ -932,6 +932,12 @@ fun lookupENamed (env : env) n =
NONE => raise UnboundNamed n
| SOME x => x
+fun matchNamedEByPrefix (env: env) (str: string) =
+ List.filter (fn (name,con) => String.isPrefix str name) (IM.listItems (#namedE env))
+
+fun matchRelEByPrefix (env: env) (str: string) =
+ List.filter (fn (name,con) => String.isPrefix str name) (#relE env)
+
fun checkENamed (env : env) n =
Option.isSome (IM.find (#namedE env, n))
@@ -985,7 +991,8 @@ fun lookupStrNamed (env : env) n =
| SOME x => x
fun lookupStr (env : env) x = SM.find (#renameStr env, x)
-
+fun matchStrByPrefix (env: env) prefix =
+ List.filter (fn (name,_) => String.isPrefix prefix name) (SM.listItemsi (#renameStr env))
fun sgiSeek (sgi, (sgns, strs, cons)) =
case sgi of