summaryrefslogtreecommitdiff
path: root/src/server
diff options
context:
space:
mode:
authorkrasimir <krasimir@chalmers.se>2010-07-13 15:33:54 +0000
committerkrasimir <krasimir@chalmers.se>2010-07-13 15:33:54 +0000
commit4fdd21f1273e75b84e87c49b95b02e9fc149b5c0 (patch)
tree2f23924035d3b2a45918ea4bd215de57d313520a /src/server
parent3ca0b6a976719be9f1fe17481441061bb7d18f45 (diff)
detailed information for the type errors from PGFService
Diffstat (limited to 'src/server')
-rw-r--r--src/server/PGFService.hs16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/server/PGFService.hs b/src/server/PGFService.hs
index ab968ecbf..35919d4ab 100644
--- a/src/server/PGFService.hs
+++ b/src/server/PGFService.hs
@@ -128,7 +128,9 @@ doTranslate pgf input mcat mfrom mto =
)]
| tree <- trees])]
jsonParseOutput (PGF.ParseFailed _) = []
- jsonParseOutput (PGF.TypeError errs) = [("typeErrors",showJSON [show (PGF.ppTcError err) | (fid,err) <- errs])]
+ jsonParseOutput (PGF.TypeError errs) = [("typeErrors",showJSON [toJSObject [("fid", showJSON fid)
+ ,("msg", showJSON (show (PGF.ppTcError err)))
+ ] | (fid,err) <- errs])]
-- used in phrasebook
doTranslateGroup :: PGF -> String -> Maybe PGF.Type -> Maybe PGF.Language -> Maybe PGF.Language -> JSValue
@@ -198,7 +200,9 @@ doParse pgf input mcat mfrom = showJSON $ map toJSObject
where
jsonParseOutput (PGF.ParseOk trees) = [("trees",showJSON trees)]
jsonParseOutput (PGF.ParseFailed _) = []
- jsonParseOutput (PGF.TypeError errs) = [("typeErrors",showJSON [show (PGF.ppTcError err) | (fid,err) <- errs])]
+ jsonParseOutput (PGF.TypeError errs) = [("typeErrors",showJSON [toJSObject [("fid", showJSON fid)
+ ,("msg", showJSON (show (PGF.ppTcError err)))
+ ] | (fid,err) <- errs])]
doComplete :: PGF -> String -> Maybe PGF.Type -> Maybe PGF.Language -> Maybe Int -> JSValue
doComplete pgf input mcat mfrom mlimit = showJSON $ map toJSObject $ limit
@@ -328,7 +332,13 @@ instance JSON PGF.Expr where
instance JSON PGF.BracketedString where
readJSON x = return (PGF.Leaf "")
- showJSON x = showJSON ""
+ showJSON (PGF.Bracket cat fid index _ bs)
+ = showJSON $ toJSObject [("cat", showJSON cat)
+ ,("fid", showJSON fid)
+ ,("index", showJSON index)
+ ,("children", showJSON bs)
+ ]
+ showJSON (PGF.Leaf s) = showJSON $ toJSObject [("token", s)]
-- * PGF utilities