summaryrefslogtreecommitdiff
path: root/src/GF/CF/CFIdent.hs
diff options
context:
space:
mode:
authoraarne <unknown>2003-11-03 16:27:55 +0000
committeraarne <unknown>2003-11-03 16:27:55 +0000
commit94326929b144913642121bef8f8ecc98feb992e7 (patch)
tree07d59cc33cbef2ac79c6f3f573b9718c51322e7a /src/GF/CF/CFIdent.hs
parent2728e6e7ceec92c7f781368b4a523b37e5dee3b9 (diff)
Fixed several things, e.g. tokenizer.
Diffstat (limited to 'src/GF/CF/CFIdent.hs')
-rw-r--r--src/GF/CF/CFIdent.hs21
1 files changed, 10 insertions, 11 deletions
diff --git a/src/GF/CF/CFIdent.hs b/src/GF/CF/CFIdent.hs
index ab86b8bd4..02343bfb7 100644
--- a/src/GF/CF/CFIdent.hs
+++ b/src/GF/CF/CFIdent.hs
@@ -56,23 +56,17 @@ type Profile = [([[Int]],[Int])]
mkCFFun :: Atom -> CFFun
mkCFFun t = CFFun (t,[])
-{- ----
-getCFLiteral :: String -> Maybe (CFCat, CFFun)
-getCFLiteral s = case lookupLiteral' s of
- Ok (c, lit) -> Just (cat2CFCat c, mkCFFun lit)
- _ -> Nothing
--}
-
varCFFun :: Ident -> CFFun
varCFFun = mkCFFun . AV
consCFFun :: CIdent -> CFFun
consCFFun = mkCFFun . AC
-{- ----
-string2CFFun :: String -> CFFun
-string2CFFun = consCFFun . Ident
--}
+stringCFFun :: String -> CFFun
+stringCFFun = mkCFFun . AS
+
+intCFFun :: Int -> CFFun
+intCFFun = mkCFFun . AI . toInteger
cfFun2String :: CFFun -> String
cfFun2String (CFFun (f,_)) = prt f
@@ -110,6 +104,11 @@ catVarCF = ident2CFCat (mkCIdent "_" "#Var") (identC "_") ----
cat2CFCat :: (Ident,Ident) -> CFCat
cat2CFCat = uncurry idents2CFCat
+---- literals
+cfCatString = string2CFCat "Predef" "String"
+cfCatInt = string2CFCat "Predef" "Int"
+
+
{- ----
uCFCat :: CFCat