mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-15 22:22:51 -06:00
the embedded grammars now work with both the pure Haskell and the Haskell binding API
This commit is contained in:
@@ -38,6 +38,7 @@ module PGF2 (-- * PGF
|
||||
mkInt,unInt,
|
||||
mkFloat,unFloat,
|
||||
mkMeta,unMeta,
|
||||
mkCId,
|
||||
-- ** Types
|
||||
Type, Hypo, BindType(..), startCat,
|
||||
readType, showType,
|
||||
|
||||
@@ -176,6 +176,9 @@ unMeta (Expr expr touch) =
|
||||
touch
|
||||
return (Just (fromIntegral (id :: CInt)))
|
||||
|
||||
-- | this functions is only for backward compatibility with the old Haskell runtime
|
||||
mkCId x = x
|
||||
|
||||
-- | parses a 'String' as an expression
|
||||
readExpr :: String -> Maybe Expr
|
||||
readExpr str =
|
||||
|
||||
@@ -51,6 +51,7 @@ module PGF(
|
||||
mkStr, unStr,
|
||||
mkInt, unInt,
|
||||
mkDouble, unDouble,
|
||||
mkFloat, unFloat,
|
||||
mkMeta, unMeta,
|
||||
-- extra
|
||||
pExpr,
|
||||
|
||||
@@ -6,6 +6,7 @@ module PGF.Expr(Tree, BindType(..), Expr(..), Literal(..), Patt(..), Equation(..
|
||||
mkStr, unStr,
|
||||
mkInt, unInt,
|
||||
mkDouble, unDouble,
|
||||
mkFloat, unFloat,
|
||||
mkMeta, unMeta,
|
||||
|
||||
normalForm,
|
||||
@@ -154,6 +155,9 @@ unDouble (ETyped e ty) = unDouble e
|
||||
unDouble (EImplArg e) = unDouble e
|
||||
unDouble _ = Nothing
|
||||
|
||||
mkFloat = mkDouble
|
||||
unFloat = unDouble
|
||||
|
||||
-- | Constructs an expression which is meta variable
|
||||
mkMeta :: Int -> Expr
|
||||
mkMeta i = EMeta i
|
||||
|
||||
Reference in New Issue
Block a user