diff options
| author | krasimir <krasimir@chalmers.se> | 2009-12-05 10:12:03 +0000 |
|---|---|---|
| committer | krasimir <krasimir@chalmers.se> | 2009-12-05 10:12:03 +0000 |
| commit | 8798ff76f98d268ef073ad4ec16b29f845a13f38 (patch) | |
| tree | 41edaf2ab0d3aacefe82e0176b66fd7b54fceb87 /src | |
| parent | e06c7da79b7c26ca9c89bc3ca5a401dedde57fec (diff) | |
added mkMeta and isMeta in PGF
Diffstat (limited to 'src')
| -rw-r--r-- | src/PGF.hs | 2 | ||||
| -rw-r--r-- | src/PGF/Expr.hs | 10 |
2 files changed, 11 insertions, 1 deletions
diff --git a/src/PGF.hs b/src/PGF.hs index 5cd499aec..6c192095d 100644 --- a/src/PGF.hs +++ b/src/PGF.hs @@ -46,7 +46,7 @@ module PGF( mkStr, unStr, mkInt, unInt, mkDouble, unDouble, - + mkMeta, isMeta, -- * Operations -- ** Linearization diff --git a/src/PGF/Expr.hs b/src/PGF/Expr.hs index bddbc84d4..cf0cb79aa 100644 --- a/src/PGF/Expr.hs +++ b/src/PGF/Expr.hs @@ -5,6 +5,7 @@ module PGF.Expr(Tree, BindType(..), Expr(..), Literal(..), Patt(..), Equation(.. mkStr, unStr,
mkInt, unInt,
mkDouble, unDouble,
+ mkMeta, isMeta,
normalForm,
@@ -132,6 +133,15 @@ unDouble :: Expr -> Maybe Double unDouble (ELit (LFlt f)) = Just f
unDouble _ = Nothing
+-- | Constructs an expression which is meta variable
+mkMeta :: Expr
+mkMeta = EMeta 0
+
+-- | Checks whether an expression is a meta variable
+isMeta :: Expr -> Bool
+isMeta (EMeta _) = True
+isMeta _ = False
+
-----------------------------------------------------
-- Parsing
-----------------------------------------------------
|
