summaryrefslogtreecommitdiff
path: root/src/Transfer/Core/Lex.x
diff options
context:
space:
mode:
authorbringert <bringert@cs.chalmers.se>2005-11-29 15:48:13 +0000
committerbringert <bringert@cs.chalmers.se>2005-11-29 15:48:13 +0000
commiteef20fa404f11fda0b9f73da1a3ee41db3201062 (patch)
treef03879bedcf2a7885b092d18581f11a994a008be /src/Transfer/Core/Lex.x
parent2be80a7e3b4834bd3146ac9d2f27190fd0689d27 (diff)
Added meta variables to transfer front-end and core.
Diffstat (limited to 'src/Transfer/Core/Lex.x')
-rw-r--r--src/Transfer/Core/Lex.x3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/Transfer/Core/Lex.x b/src/Transfer/Core/Lex.x
index 6946d5fe8..10a286d66 100644
--- a/src/Transfer/Core/Lex.x
+++ b/src/Transfer/Core/Lex.x
@@ -24,6 +24,7 @@ $u = [\0-\255] -- universal: any character
$white+ ;
@rsyms { tok (\p s -> PT p (TS $ share s)) }
+\? $d + { tok (\p s -> PT p (eitherResIdent (T_TMeta . share) s)) }
($l | \_)($l | $d | \_ | \')* { tok (\p s -> PT p (eitherResIdent (T_CIdent . share) s)) }
$l $i* { tok (\p s -> PT p (eitherResIdent (TV . share) s)) }
@@ -46,6 +47,7 @@ data Tok =
| TV !String -- identifiers
| TD !String -- double precision float literals
| TC !String -- character literals
+ | T_TMeta !String
| T_CIdent !String
deriving (Eq,Show,Ord)
@@ -68,6 +70,7 @@ prToken t = case t of
PT _ (TV s) -> s
PT _ (TD s) -> s
PT _ (TC s) -> s
+ PT _ (T_TMeta s) -> s
PT _ (T_CIdent s) -> s
_ -> show t