summaryrefslogtreecommitdiff
path: root/src/GF/Speech/TransformCFG.hs
diff options
context:
space:
mode:
authorbringert <bringert@cs.chalmers.se>2006-12-21 16:48:46 +0000
committerbringert <bringert@cs.chalmers.se>2006-12-21 16:48:46 +0000
commita335b29c0a85ea81ee1017f18dd6f2595d2a5227 (patch)
treee0b4d7356c3bf5cb82e9d7e11ff9e4d3e5f4e764 /src/GF/Speech/TransformCFG.hs
parent51df5b8a8d562a3ac4b280b37e7ab04279e22d04 (diff)
Meta variables are now treated as functions with name ? in SISR, VoiceXML and JavaScript linearization. VoiceXML now returns the partial result when update() is false.
Diffstat (limited to 'src/GF/Speech/TransformCFG.hs')
-rw-r--r--src/GF/Speech/TransformCFG.hs3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/GF/Speech/TransformCFG.hs b/src/GF/Speech/TransformCFG.hs
index 796382b7d..31017c61f 100644
--- a/src/GF/Speech/TransformCFG.hs
+++ b/src/GF/Speech/TransformCFG.hs
@@ -54,6 +54,7 @@ data CFTerm
| CFRes Int
| CFVar Int
| CFConst String
+ | CFMeta
deriving (Eq,Show)
type Cat_ = String
@@ -69,7 +70,7 @@ cfgToCFRules cfg =
where symb = mapSymbol catToString id
catToString = prt
nameToTerm (Name f prs) = CFObj f (map profileToTerm prs)
- profileToTerm (Unify []) = CFConst "?"
+ profileToTerm (Unify []) = CFMeta
profileToTerm (Unify xs) = CFRes (last xs) -- FIXME: unify
profileToTerm (Constant f) = CFConst (maybe "?" prIdent (forestName f))