summaryrefslogtreecommitdiff
path: root/src/example-based/ExampleService.hs
diff options
context:
space:
mode:
authorhallgren <hallgren@chalmers.se>2011-11-02 16:54:22 +0000
committerhallgren <hallgren@chalmers.se>2011-11-02 16:54:22 +0000
commit312e602dfe69fc6d391d58d715fccad6c1ed1023 (patch)
tree9fab05948c36ce7a1804405eb8c273da2a6b897c /src/example-based/ExampleService.hs
parent5856098f2f71dc443cf6412443d6b3efbcb8efb8 (diff)
gfse: supply information about what's defined in the exampe language to the server functions for example-based grammar writing
Diffstat (limited to 'src/example-based/ExampleService.hs')
-rw-r--r--src/example-based/ExampleService.hs10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/example-based/ExampleService.hs b/src/example-based/ExampleService.hs
index 0065fd4dd..185e4fd94 100644
--- a/src/example-based/ExampleService.hs
+++ b/src/example-based/ExampleService.hs
@@ -22,12 +22,16 @@ cgiMain' root cwd cache =
do command <- getInp "command"
environ <- parseEnviron =<< getInp "state"
case command of
- "possibilities" -> outputJSONP (E.getNext environ)
- "provide_example" -> doProvideExample root cwd cache environ
+ "possibilities" -> doPossibilities environ
+ "provide_example" -> doProvideExample root cwd cache environ
"abstract_example" -> doAbstractExample cwd cache environ
- "test_function" -> doTestFunction cwd cache environ
+ "test_function" -> doTestFunction cwd cache environ
_ -> throwCGIError 400 ("Unknown command: "++command) []
+doPossibilities environ =
+ do example_environ <- parseEnviron =<< getInp "example_state"
+ outputJSONP (E.getNext environ example_environ)
+
doProvideExample root cwd cache environ =
do Just lang <- readInput "lang"
fun <- getCId "fun"