summaryrefslogtreecommitdiff
path: root/src/GF/Canon
diff options
context:
space:
mode:
authoraarne <unknown>2003-10-03 13:03:15 +0000
committeraarne <unknown>2003-10-03 13:03:15 +0000
commit719fcd09ea0501d864af3afacc843186d24f6c94 (patch)
tree7f45380d8063f174ff8c33f9d5de4ce0e88ddd35 /src/GF/Canon
parentcfe8ebc1fbbf60d7d90aaa4776b029b5eb84ae98 (diff)
Building interface to PL's parser.
Diffstat (limited to 'src/GF/Canon')
-rw-r--r--src/GF/Canon/Look.hs15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/GF/Canon/Look.hs b/src/GF/Canon/Look.hs
index a71d024c2..ec76008f9 100644
--- a/src/GF/Canon/Look.hs
+++ b/src/GF/Canon/Look.hs
@@ -33,6 +33,21 @@ lookupLin gr f = do
CncCat _ t _ -> return t
AnyInd _ n -> lookupLin gr $ redirectIdent n f
+lookupLincat :: CanonGrammar -> CIdent -> Err CType
+lookupLincat gr f = do
+ info <- lookupCncInfo gr f
+ case info of
+ CncCat t _ _ -> return t
+ AnyInd _ n -> lookupLincat gr $ redirectIdent n f
+
+lookupPrintname :: CanonGrammar -> CIdent -> Err Term
+lookupPrintname gr f = do
+ info <- lookupCncInfo gr f
+ case info of
+ CncFun _ _ _ t -> return t
+ CncCat _ _ t -> return t
+ AnyInd _ n -> lookupPrintname gr $ redirectIdent n f
+
lookupResInfo :: CanonGrammar -> CIdent -> Err Info
lookupResInfo gr f@(CIQ m c) = do
mt <- M.lookupModule gr m