diff options
Diffstat (limited to 'src/GF/Grammar/API.hs')
| -rw-r--r-- | src/GF/Grammar/API.hs | 58 |
1 files changed, 0 insertions, 58 deletions
diff --git a/src/GF/Grammar/API.hs b/src/GF/Grammar/API.hs deleted file mode 100644 index 8dc86c10e..000000000 --- a/src/GF/Grammar/API.hs +++ /dev/null @@ -1,58 +0,0 @@ -module GF.Grammar.API ( - Grammar, - emptyGrammar, - checkTerm, - computeTerm, - showTerm, - TermPrintStyle(..), TermPrintQual(..), - ) where - -import GF.Infra.Ident -import GF.Infra.CheckM -import GF.Infra.Modules (greatestResource) -import GF.Compile.GetGrammar -import GF.Grammar.Macros -import GF.Grammar.Parser -import GF.Grammar.Printer -import GF.Grammar.Grammar - -import GF.Compile.Rename (renameSourceTerm) -import GF.Compile.CheckGrammar (inferLType) -import GF.Compile.Compute (computeConcrete) - -import GF.Data.Operations -import GF.Infra.Option - -import qualified Data.ByteString.Char8 as BS -import Text.PrettyPrint - -type Grammar = SourceGrammar - -emptyGrammar :: Grammar -emptyGrammar = emptySourceGrammar - -checkTerm :: Grammar -> Term -> Err Term -checkTerm gr t = do - mo <- maybe (Bad "no source grammar in scope") return $ greatestResource gr - checkTermAny gr mo t - -checkTermAny :: Grammar -> Ident -> Term -> Err Term -checkTermAny gr m t = (fmap fst . runCheck) $ do - t <- renameSourceTerm gr m t - (t,_) <- inferLType gr [] t - return t - -computeTerm :: Grammar -> Term -> Err Term -computeTerm = computeConcrete - -showTerm :: TermPrintStyle -> TermPrintQual -> Term -> String -showTerm style q t = render $ - case style of - TermPrintTable -> vcat [p <+> s | (p,s) <- ppTermTabular q t] - TermPrintAll -> vcat [ s | (p,s) <- ppTermTabular q t] - TermPrintDefault -> ppTerm q 0 t - -data TermPrintStyle - = TermPrintTable - | TermPrintAll - | TermPrintDefault |
